MyBatis-Plus是一个MyBatis框架的增强工具,在MyBatis的基础上只做增强不做改变,为简化开发、提高效率而生。
本文将与大家分享、演示项目中很实用的代码生成。
1.新建项目、引入依赖
项目结构图如下:
2.编写生成类MyBatisPlusGenerator
源码如下:
package com.ldl.cn;
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;
public class MyBatisPlusGenerator {
public static void main(String[] args) {
//全局配置
GlobalConfig globalConfig = new GlobalConfig();
globalConfig.setActiveRecord(false)
.setAuthor("Dalin Lu")
.setOutputDir("D:\\workspace\\TestMybatisPlus\\src\\main\\java")
.setFileOverride(true)
.setServiceName("%sService")
.setBaseResultMap(true)
.setBaseColumnList(true);
//数据源配置
DataSourceConfig dataSourceConfig = new DataSourceConfig();
dataSourceConfig.setDbType(DbType.MYSQL)
.setDriverName("com.mysql.cj.jdbc.Driver")
.setUrl("jdbc:mysql://localhost:3306/mytest?useUnicode=true&useSSL=false&serverTimezone=UTC")
.setUsername("root")
.setPassword("****");
//策略配置
StrategyConfig strategyConfig = new StrategyConfig();
strategyConfig.setCapitalMode(true)
.setDbColumnUnderline(true)
.setNaming(NamingStrategy.underline_to_camel)
.setInclude(new String[]{"student"}); // 生成的表,可同时传入多个表名
//包名策略配置
PackageConfig packageConfig = new PackageConfig();
packageConfig.setParent("com.ldl.cn")
.setMapper("dao")
.setService("service")
.setController("controller")
.setEntity("entity")
.setXml("mapper");
//整合配置
AutoGenerator ag = new AutoGenerator();
ag.setGlobalConfig(globalConfig)
.setDataSource(dataSourceConfig)
.setStrategy(strategyConfig)
.setPackageInfo(packageConfig);
//执行
ag.execute();
}
}
3.测试生成
运行结果:
OK!各层代码成功生成!