Springboot整合MybatisPlus的实现过程解析
这篇文章主要介绍了Springboot整合MybatisPlus的实现过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
锡山网站建设公司创新互联建站,锡山网站设计制作,有大型网站制作公司丰富经验。已为锡山上千提供企业网站建设服务。企业网站搭建\外贸营销网站建设要多少钱,请找那个售后服务好的锡山做网站的公司定做!
1、pom文件
<?xml version="1.0" encoding="UTF-8"?>4.0.0 com.cun plus 0.0.1-SNAPSHOT jar plus Demo project for Spring Boot org.springframework.boot spring-boot-starter-parent 1.5.14.RELEASE UTF-8 UTF-8 1.8 org.springframework.boot spring-boot-starter-web MySQL mysql-connector-java runtime org.springframework.boot spring-boot-starter-test test com.baomidou mybatis-plus-boot-starter 2.3 org.freemarker freemarker 2.3.28 com.alibaba druid-spring-boot-starter 1.1.10 org.springframework.boot spring-boot-maven-plugin
2、创建CodeGenerator.java
package com.cun.plus; import com.baomidou.mybatisplus.enums.IdType; import com.baomidou.mybatisplus.generator.AutoGenerator; import com.baomidou.mybatisplus.generator.config.DataSourceConfig; import com.baomidou.mybatisplus.generator.config.GlobalConfig; import com.baomidou.mybatisplus.generator.config.PackageConfig; import com.baomidou.mybatisplus.generator.config.StrategyConfig; import com.baomidou.mybatisplus.generator.config.rules.DbType; import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy; import com.baomidou.mybatisplus.generator.engine.FreemarkerTemplateEngine; public class CodeGenerator { public static void main(String[] args) { //1. 全局配置 GlobalConfig config = new GlobalConfig(); config.setActiveRecord(false) // 是否支持AR模式 .setAuthor("len") // 作者 .setOutputDir(".\\src\\main\\java") // 生成路径 .setFileOverride(true) // 文件覆盖 .setIdType(IdType.AUTO) // 主键策略 .setServiceName("I%sService") // 设置生成的service接口的名字的首字母是否为I // IUserService .setBaseResultMap(true) .setBaseColumnList(true); //2. 数据源配置 DataSourceConfig dsConfig = new DataSourceConfig(); dsConfig.setDbType(DbType.MYSQL) // 设置数据库类型 .setDriverName("com.mysql.jdbc.Driver") .setUrl("jdbc:mysql://localhost:3306/mydatab?useSSL=true&verifyServerCertificate=false&allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8") .setUsername("root") .setPassword("lqq74561"); //3. 策略配置 //配置要生成的表的表名 String[] tableName = {"system_power_type","system_admin","company","power_api","power_action","power_action_api","power_action_group","power_admin_group","power_group"}; StrategyConfig stConfig = new StrategyConfig(); stConfig.setCapitalMode(true) //全局大写命名 .setDbColumnUnderline(true) // 指定表名 字段名是否使用下划线 .setNaming(NamingStrategy.underline_to_camel) // 数据库表映射到实体的命名策略 .setTablePrefix("tb_") .setInclude(tableName); // 生成的表 //4. 包名策略配置 PackageConfig pkConfig = new PackageConfig(); pkConfig.setParent("com.cun.plus") .setMapper("mapper") .setService("service") .setController("controller") .setEntity("entity") .setXml("mapper"); //5. 整合配置 AutoGenerator ag = new AutoGenerator(); ag.setGlobalConfig(config) .setDataSource(dsConfig) .setStrategy(stConfig) .setPackageInfo(pkConfig); //6. 执行 ag.setTemplateEngine(new FreemarkerTemplateEngine()); ag.execute(); } }
3、在application.yml中配置mybatis-plus
#mybatis-plus mybatis-plus: #xml mapper-locations: classpath:/mapper/*Mapper.xml #bean typeAliasesPackage: com.cun.plus.entity global-config: # 3:"UUID"; id-type: 3 field-strategy: 2 db-column-underline: true key-generator: com.baomidou.mybatisplus.incrementer.OracleKeyGenerator logic-delete-value: 1 logic-not-delete-value: 0 sql-injector: com.baomidou.mybatisplus.mapper.LogicSqlInjector configuration: map-underscore-to-camel-case: true cache-enabled: false #JdbcTypeForNull jdbc-type-for-null: 'null'
4、创建MybatisPlusConfig.java文件
package com.cun.plus.conf; import org.mybatis.spring.annotation.MapperScan; import org.springframework.context.annotation.Configuration; @Configuration @MapperScan("com.cun.plus.mapper") public class MybatisPlusConfig { }
其他
Wrapper:MP内置条件封装器。
Sql分析器:(MybatisPlusConfig.java中)
/** * SQL执行效率插件 */ @Bean @Profile({"dev","test"})// 设置 dev test 环境开启 public PerformanceInterceptor performanceInterceptor() { return new PerformanceInterceptor(); }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持创新互联。
分享文章:Springboot整合MybatisPlus的实现过程解析
网站链接:http://myzitong.com/article/pjjicj.html