mybatis-plus3.5.1代码生成器
时间: 2023-05-29 17:06:12 浏览: 199
mybatis-plus-generator 3.5.1代码生成器实例
MyBatis-Plus 3.5.1 提供了一个代码生成器,可以帮助我们快速生成 MyBatis-Plus 的实体类、Mapper 接口、Mapper XML 文件等。
使用步骤:
1. 引入 MyBatis-Plus 3.5.1 的代码生成器依赖:
```xml
<!-- MyBatis-Plus 3.5.1 的代码生成器依赖 -->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-generator</artifactId>
<version>3.5.1</version>
</dependency>
```
2. 编写代码生成器配置文件:
```properties
# 数据库配置
spring.datasource.url=jdbc:mysql://localhost:3306/mybatis_plus?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.username=root
spring.datasource.password=root
# 代码生成器配置
# 要生成的表名,多个表名用英文逗号分隔
generator.table-names=user,role,permission
# 生成代码的包名
generator.package-name=com.example.mybatisplus
# 生成代码的作者
generator.author=MyBatis-Plus
# 是否覆盖已有文件
generator.file-overwrite=true
# 是否在控制台输出日志
generator.log-console=true
```
3. 编写代码生成器启动类:
```java
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.NamingStrategy;
public class CodeGenerator {
public static void main(String[] args) {
// 数据源配置
DataSourceConfig dataSourceConfig = new DataSourceConfig();
dataSourceConfig.setUrl("jdbc:mysql://localhost:3306/mybatis_plus?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8");
dataSourceConfig.setDriverName("com.mysql.cj.jdbc.Driver");
dataSourceConfig.setUsername("root");
dataSourceConfig.setPassword("root");
// 全局配置
GlobalConfig globalConfig = new GlobalConfig();
globalConfig.setOutputDir(System.getProperty("user.dir") + "/src/main/java");
globalConfig.setAuthor("MyBatis-Plus");
globalConfig.setOpen(false);
// 包名配置
PackageConfig packageConfig = new PackageConfig();
packageConfig.setParent("com.example.mybatisplus");
packageConfig.setEntity("model");
packageConfig.setMapper("mapper");
packageConfig.setXml("mapper.xml");
// 策略配置
StrategyConfig strategyConfig = new StrategyConfig();
strategyConfig.setNaming(NamingStrategy.underline_to_camel);
strategyConfig.setColumnNaming(NamingStrategy.underline_to_camel);
strategyConfig.setEntityLombokModel(true);
strategyConfig.setRestControllerStyle(true);
strategyConfig.setInclude("user", "role", "permission");
// 代码生成器
AutoGenerator autoGenerator = new AutoGenerator();
autoGenerator.setDataSource(dataSourceConfig);
autoGenerator.setGlobalConfig(globalConfig);
autoGenerator.setPackageInfo(packageConfig);
autoGenerator.setStrategy(strategyConfig);
autoGenerator.execute();
}
}
```
4. 运行代码生成器启动类,即可生成实体类、Mapper 接口、Mapper XML 文件等。生成的文件会保存在指定的包名下。
注意事项:
1. 要生成的表名需要在 generator.table-names 属性中配置,多个表名用英文逗号分隔。
2. 要生成的代码包名需要在 PackageConfig 中配置。
3. 要生成的代码作者需要在 GlobalConfig 中配置。
4. 要生成的代码是否覆盖已有文件、是否在控制台输出日志等需要在 GlobalConfig 中配置。
5. 策略配置中的 NamingStrategy、entityLombokModel、restControllerStyle 等属性可以根据需求进行配置。
阅读全文