当前位置: 首页 > news >正文

资源网站源码wordpress 如何安装教程视频

资源网站源码,wordpress 如何安装教程视频,全国十大电商排名,潍坊seo推广一、前言 MyBatis 最佳搭档#xff0c;只做增强不做改变#xff0c;为简化开发、提高效率而生。 这个发展到目前阶段已经很成熟了#xff0c;社区也比较活跃#xff0c;可以放心使用。官网地址#xff1a;https://baomidou.com 二、快速开始 引入依赖 这里我引入了核心… 一、前言 MyBatis 最佳搭档只做增强不做改变为简化开发、提高效率而生。 这个发展到目前阶段已经很成熟了社区也比较活跃可以放心使用。官网地址https://baomidou.com 二、快速开始 引入依赖 这里我引入了核心 starter 依赖以及官方提供的代码生成器依赖如果你不用代码生成器可以不引用 propertiesmybatis-plus.version3.5.7/mybatis-plus.version !-- mybatis增强 orm 框架 -- /propertiesdependencies!-- mybatis-plus 相关依赖 --dependencygroupIdcom.baomidou/groupIdartifactIdmybatis-plus-spring-boot3-starter/artifactIdversion${mybatis-plus.version}/version/dependency!-- 代码生成器 --dependencygroupIdcom.baomidou/groupIdartifactIdmybatis-plus-generator/artifactIdversion${mybatis-plus.version}/version/dependency!-- mysql 依赖 版本由继承的 spring-boot-starter-parent 控制也可以自己指定 --dependencygroupIdcom.mysql/groupIdartifactIdmysql-connector-j/artifactId/dependency /dependencies 配置数据库连接 spring:datasource:driver-class-name: com.mysql.cj.jdbc.Driverurl: jdbc:mysql://localhost:3306/itshare-dev?autoReconnecttrueuseUnicodetruecharacterEncodingutf8useSSLfalserewriteBatchedStatementstrueusername: rootpassword: root这样整合就完成了接下来就可以编写我们的业务代码了。 三、业务开发 使用 mybatis-plus 的基本开发流程一般是这样的他和一些全自动的 ORM 框架还是有点区别的比如 SpringDataJPA 或者 Hibernate 并不能根据实体对象自动执行 ddl 创建表结构现在可以通过插件做到这里我们不深究一般都是通过先有表再有实体对象 通常是 创建数据表 - 代码生成器生成基础类 - 在这个基础上开发业务代码 当然你可以在代码生成器阶段尽可能的抽象出相似的地方甚至可以生成简单的 CRUD 代码市面上有很多案例可供参考若依eladmin 等等。这里我只介绍基础的 entity、mapper、service 生成。 3.1 创建数据表 这里我就不列举了根据你自己业务来。 3.2 代码生成器 引入依赖 !-- 代码生成器 -- dependencygroupIdcom.baomidou/groupIdartifactIdmybatis-plus-generator/artifactIdversion${mybatis-plus.version}/version /dependency !-- 模板引擎 -- dependencygroupIdorg.freemarker/groupIdartifactIdfreemarker/artifactId /dependency代码生成工具类 public class CodeGenerator {private static final String DB_URL jdbc:mysql://localhost:3306/itshare-dev?useUnicodetruecharacterEncodingUTF-8useSSLfalseserverTimezoneAsia/ShanghaitinyInt1isBitfalse;private static final String USERNAME root;private static final String PASSWORD root;public static void main(String[] args) {AtomicReferenceString loadModulePackageName new AtomicReference();// 获取当前路径String path System.getProperty(user.dir);// tinyInt1isBitfalseFastAutoGenerator.create(DB_URL, USERNAME, PASSWORD).globalConfig((scanner, builder) - {// 设置作者builder.author(曹申阳).disableOpenDir().enableSpringdoc() // 如果想用swagger生成 springdoc 规范注解 把这个放开// 指定输出目录.outputDir(path \\src\\test\\java);}).dataSourceConfig(builder -builder.typeConvertHandler((globalConfig, typeRegistry, metaInfo) - {if (JdbcType.TINYINT metaInfo.getJdbcType()) {return DbColumnType.INTEGER;}return typeRegistry.getColumnType(metaInfo);})).packageConfig((scanner, builder) - {loadModulePackageName.set(scanner.apply(请输入当前父包模块名称));builder.parent(com.yang.itshare) // 设置父包名.moduleName(loadModulePackageName.get()) // 设置父包模块名.service(service).serviceImpl(service.impl).mapper(mapper).controller(controller).entity(entity)// 设置mapperXml生成路径.pathInfo(Collections.singletonMap(OutputFile.xml, path \\src\\main\\resources\\mapper\\ loadModulePackageName.get()));}).strategyConfig((scanner, builder) - {// 设置需要生成的表名builder.addInclude(getTables(scanner.apply(请输入表名多个英文逗号分隔所有输入 all))).addTablePrefix(itshare_) // 设置过滤表前缀.entityBuilder() // 设置 entity 生成规则.addTableFills(new Column(create_time, FieldFill.INSERT)).addTableFills(new Column(update_time, FieldFill.INSERT_UPDATE)).logicDeleteColumnName(is_deleted).idType(IdType.AUTO).enableLombok()// lombok 注解.controllerBuilder() // 设置 controller 生成规则.enableRestStyle() // 开启生成RestController 控制器.build();}).templateEngine(new FreemarkerTemplateEngine()) // 使用Freemarker引擎模板默认的是Velocity引擎模板.execute();}/*** 处理 all 情况*/protected static ListString getTables(String tables) {return all.equals(tables) ? Collections.emptyList() : Arrays.asList(tables.split(,));}}亲测可用注释也很清楚想要自己配置可以参考配置文件 https://baomidou.com/reference/new-code-generator-configuration/ 运行测试一下我习惯将生成的放在 test 下然后再复制到项目下方便调试如果你足够自信可以指定到想要的地方一步到位。 这个时候还差最后一步开启 mapper 扫描就可以正常使用了 MapperScan(com.yang.itshare.*.mapper)你可以加在启动类上或者其它可以被扫描到的类上我习惯加载 mybatis 的插件配置类上后面会介绍。 四、常用插件功能 4.1 逻辑删除 配置全局逻辑删除属性 mybatis-plus:global-config:db-config:logic-delete-field: is_deleted # 全局逻辑删除字段名logic-delete-value: 1 # 逻辑已删除值logic-not-delete-value: 0 # 逻辑未删除值# 打印 sql 日志configuration:log-impl: org.apache.ibatis.logging.stdout.StdOutImpl# 配置mapper的扫描找到所有的mapper.xml映射文件 如果和默认路径一样可以不配置mapper-locations: classpath*:/mapper/**/*.xml这里我把常用的也放出来了日志打印以及 xml 扫描我一般就放默认地址这里不加也可以防止大家想要修改位置可以在这里配置路径。 加逻辑删除注解 如果你使用的是我上面的代码生成器代码会自动添加注解 否则需要自己完成这一步。 之后在调用 mybatis-plus 封装的查询以及删除操作时会默认加上这个删除的判断比如查询会过滤掉以删除的删除会变成修改这个删除标记的状态值并不会真正的删除。注意如果是使用自己编写的 xml 将不会生效。 4.2 自动填充字段 实现 MetaObjectHandler Slf4j Component public class MyMetaObjectHandler implements MetaObjectHandler {Override public void insertFill(MetaObject metaObject) {log.info(start insert fill ....);this.strictInsertFill(metaObject, createTime, LocalDateTime.class, LocalDateTime.now());this.strictUpdateFill(metaObject, updateTime, LocalDateTime.class, LocalDateTime.now()); }Override public void updateFill(MetaObject metaObject) {log.info(start update fill ....);this.strictUpdateFill(metaObject, updateTime, LocalDateTime.class, LocalDateTime.now()); }实体类上添加注解 如果你使用我上面的代码生成器会自动添加否则要自己指定 4.3 分页插件和防止全表更新与删除插件 创建配置类 Configuration MapperScan(com.yang.itshare.*.mapper) public class MybatisPlusConfig {Beanpublic MybatisPlusInterceptor mybatisPlusInterceptor() {MybatisPlusInterceptor interceptor new MybatisPlusInterceptor();interceptor.addInnerInterceptor(new BlockAttackInnerInterceptor()); // 防全表更新与删除插件PaginationInnerInterceptor paginationInnerInterceptor new PaginationInnerInterceptor(DbType.MYSQL);paginationInnerInterceptor.setMaxLimit(1000L);interceptor.addInnerInterceptor(paginationInnerInterceptor); // 如果配置多个插件, 切记分页最后添加return interceptor;} }我一般会在这里加上 mapper 的扫描当然你也可以加在启动类上 还有很多可用插件大家根据需要引入即可 https://baomidou.com/plugins/ 五、总结 这样我们完成了基本的整合已经可以满足我们前期的开发工作。至于一些高级功能比如 多数据源支持数据权限插件等等。等我们需要的时候可以自己查阅官方文档进行添加官方文档写的很详细。
http://www.w-s-a.com/news/255952/

相关文章:

  • 可以接项目做的网站网站源码php
  • 杭州广众建设工程有限公司网站网页游戏人气排行榜
  • 上海网站开发建设最简单的网站代码
  • 东莞做网站建设免费网站建设案例
  • 莱州建设局网站wordpress的主题下载地址
  • 二级网站域名长沙企业关键词优化服务质量
  • 在家有电脑怎么做网站wordpress 入门主题
  • 什邡建设局网站sem推广是什么意思
  • 西安分类信息网站网站敏感关键词
  • 黑彩网站怎么做建设网站费用分析
  • 网站关键词选取的步骤和方法小程序商城哪家好排行榜
  • 儿童产品网站建设网站建设优化排名推广
  • 做网站的硬件无锡招标网官方网站
  • 做推送好用的网站合肥网站推广培训
  • 网站开发团队简介贵阳双龙区建设局网站
  • 新乡做网站公司哪家好wordpress侧边栏文件
  • 小白建站怎么撤销网站备案
  • 哪个网站做调查问卷赚钱短视频制作神器
  • 上海企业响应式网站建设推荐汕头网络优化排名
  • 怎么建立公司网站平台怎么将网站做成公司官网
  • 培训学校网站怎样快速建设网站模板
  • 建设电子商务网站论文云服务器安装wordpress
  • 做展板好的网站学校的网站开发过程
  • 宁波搭建网站价格西部数码网站正在建设中是什么意思
  • 吉林省建设项目招标网站苏州网络推广定制
  • 网站域名所有权证明引流推广接单
  • 做网站百度百科孟州网站建设
  • 服务网站建设企业广州模板建站系统
  • 怎么做属于自己的免费网站浏览器游戏网址
  • 上海城乡住房建设厅网站西安网站推广慧创科技