mybatisplus代码生成器
导入依赖包
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>2.3</version>
</dependency>
<dependency>
<groupId>org.apache.velocity</groupId>
<artifactId>velocity-engine-core</artifactId>
<version>2.0</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.0.29</version>
</dependency>
配置代码生成器
1.全局配置
//1. 全局配置
GlobalConfig config = new GlobalConfig();
config.setActiveRecord(true) // 是否支持AR模式
.setAuthor("yourName") // 作者
.setOutputDir("D:\\dev\\repository\\test\\src\\main\\java") // 生成代码的路径
.setFileOverride(true) // 文件是否覆盖
.setServiceName("%sService") // 设置生成的service接口的名字的首字母不是I
.setBaseResultMap(true)
.setBaseColumnList(true);
2.数据源配置
DataSourceConfig dsConfig = new DataSourceConfig();
dsConfig.setDbType(DbType.MYSQL) // 设置数据库的类型为mysql
.setDriverName("com.mysql.cj.jdbc.Driver")
.setUrl("jdbc:mysql://localhost:3306/table?useUnicode=true&characterEncoding=utf-8&serverTimezone=GMT%2B8&useSSL=false")
.setUsername("root")
.setPassword("123456");
3.策略配置
StrategyConfig stConfig = new StrategyConfig();
stConfig.setCapitalMode(true) //全局大写命名
.setDbColumnUnderline(true) // 指定表名、字段名是否使用下划线
.setNaming(NamingStrategy.underline_to_camel) // 数据库表映射到实体的命名策略
.setInclude("tableName"); // 需要生成的表
4.包名策略配置
PackageConfig pkConfig = new PackageConfig();
pkConfig.setParent("com.test")
.setMapper("mapper") //dao层
.setService("service") //service层
.setController("controller") //controller层
.setEntity("entity") // pojo
.setXml("mapper"); //xml
5.整合配置并运行
AutoGenerator ag = new AutoGenerator();
ag.setGlobalConfig(config)
.setDataSource(dsConfig)
.setStrategy(stConfig)
.setPackageInfo(pkConfig);
ag.execute();
分页插件
@Configuration
public class MyBatisPlusConfig {
/**
* 分页插件
* @return
*/
@Bean
public PaginationInterceptor paginationInterceptor() {
return new PaginationInterceptor();
}
}