使用Springboot + Gradle快速整合Mybatis-Plus
使用Springboot + Gradle快速整合Mybatis-Plus
作者:Stanley 罗昊
【转载请注明出处和署名,谢谢!】
MyBatis-Plus(简称 MP)是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。
注:作者使用IDEA编辑器
使用 Spring Initializr 快速初始化一个 Spring Boot 工程
在IDEA编辑左上角Flie ->new - >Project 👇
选择Spring Initializr -->Next:(下一步)进入下面这个界面👇,Group:填写你的包路径 Artifact:项目名
jar包管理工具选择Gradle Project -->Next(下一步)
选择Web->Next(下一步)编写项目文件名以及路径
点击Finish(完成)
添加依赖
点击 build.gradle添加依赖
引入一下依赖:
dependencies { compile('org.springframework.boot:spring-boot-starter-web') compile('org.springframework.boot:spring-boot-starter-thymeleaf') compile group: 'org.mybatis.generator', name: 'mybatis-generator-core', version: '1.3.7' compile('org.mybatis.spring.boot:mybatis-spring-boot-starter:1.3.1') implementation group: 'com.alibaba', name: 'druid', version: '1.1.12' compile group: 'org.springframework.boot', name: 'spring-boot-starter', version: '2.1.2.RELEASE' testCompile group: 'org.springframework.boot', name: 'spring-boot-starter-test', version: '2.1.2.RELEASE' compile group: 'com.baomidou', name: 'mybatis-plus-boot-starter', version: '3.0.7.1' testCompile group: 'com.h2database', name: 'h2', version: '1.4.196' compile group: 'org.projectlombok', name: 'lombok', version: '1.16.20' compile group: 'com.baomidou', name: 'mybatis-plus-boot-starter', version: '3.0.1' compile group: 'mysql', name: 'mysql-connector-java', version: '8.0.11' compile group: 'org.springframework', name: 'spring-jdbc', version: '4.0.0.RELEASE' compile group: 'com.baomidou', name: 'mybatis-plus', version: '3.0.1' }
配置resources 文件下的 application.yml
以上有MySQL8.0以上jar包,在编写jdbc连接池是,多了一个cj
datasource: type: com.alibaba.druid.pool.DruidDataSource driver-class-name: com.mysql.cj.jdbc.Driver//8.0以上需要多加一个cj username: 用户名 password: 密码 url: jdbc:mysql://localhost:3306/数据库?characterEncoding=utf-8&useSSL=false mybatis-plus: mapper-locations: classpath*:mapperConfig/*.xml
编写代码生成器CodeGeneration在编译路径下
1 import com.baomidou.mybatisplus.annotation.DbType; 2 import com.baomidou.mybatisplus.generator.AutoGenerator; 3 import com.baomidou.mybatisplus.generator.config.DataSourceConfig; 4 import com.baomidou.mybatisplus.generator.config.GlobalConfig; 5 import com.baomidou.mybatisplus.generator.config.PackageConfig; 6 import com.baomidou.mybatisplus.generator.config.StrategyConfig; 7 import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy; 8 9 /** 10 * @author Stanley 罗昊 11 * @ClassName: CodeGeneration 12 * @Description: 代码生成器 13 * @date 2019年2月15日 下午8:10:14 14 */ 15 public class CodeGeneration { 16 17 /** 18 * @param args 19 * @Title: main 20 * @Description: 生成 21 */ 22 public static void main(String[] args) { 23 AutoGenerator 24 mpg = new AutoGenerator(); 25 26 27 // 全局配置 28 GlobalConfig gc = new GlobalConfig(); 29 gc.setOutputDir("src\\main\\java");//输出文件路径 30 gc.setFileOverride(true); 31 gc.setActiveRecord(false);// 不需要ActiveRecord特性的请改为false 32 gc.setEnableCache(false);// XML 二级缓存 33 gc.setBaseResultMap(true);// XML ResultMap 34 gc.setBaseColumnList(true);// XML columList 35 gc.setAuthor("luohao");// 作者 36 37 // 自定义文件命名,注意 %s 会自动填充表实体属性! 38 gc.setControllerName("%sController"); 39 gc.setServiceName("I%sService"); 40 gc.setServiceImplName("%sServiceImpl"); 41 gc.setMapperName("%sMapper"); 42 gc.setXmlName("%sMapper"); 43 mpg.setGlobalConfig(gc); 44 45 // 数据源配置 46 DataSourceConfig dsc = new DataSourceConfig(); 47 dsc.setDbType(DbType.MYSQL); 48 dsc.setDriverName("com.mysql.cj.jdbc.Driver"); 49 dsc.setUsername("root"); 50 dsc.setPassword("123"); 51 dsc.setUrl("jdbc:mysql://localhost:3306/mybatispuls?characterEncoding=utf-8&useSSL=false"); 52 mpg.setDataSource(dsc); 53 54 // 策略配置 55 StrategyConfig strategy = new StrategyConfig(); 56 // strategy.setTablePrefix(new String[] { "sys_" });// 此处可以修改为您的表前缀 57 strategy.setNaming(NamingStrategy.underline_to_camel);// 表名生成策略 58 strategy.setInclude(new String[]{"user"}); // 需要生成的表 59 60 strategy.setSuperServiceClass(null); 61 strategy.setSuperServiceImplClass(null); 62 strategy.setSuperMapperClass(null); 63 64 mpg.setStrategy(strategy); 65 66 // 包配置 67 PackageConfig pc = new PackageConfig(); 68 pc.setParent("com.lh"); 69 pc.setController("controller"); 70 pc.setService("service"); 71 pc.setServiceImpl("service.impl"); 72 pc.setMapper("dao"); 73 pc.setEntity("model"); 74 pc.setXml("mapper"); 75 mpg.setPackageInfo(pc); 76 77 // 执行生成 78 mpg.execute(); 79 80 } 81 82 }
编写完成后执行
今日感悟:
什么样的老板绝对不能跟?
总是跟你谈前景谈情怀,就是不谈钱不谈调休,
给你画大饼,用你的“前途”欺骗你,压榨你。
他们是踩着你往上爬的人,别以为他们会将你的付出记在心里,
他们最擅长的,就是翻脸不认人。
作者:罗昊
感谢各位阅读学习,
如果有疑问或纠错请在评论区留言与我交流,再次感谢各位读者的支持