# mybatis_plus_generator
**Repository Path**: liviluo/mybatis_plus_generator
## Basic Information
- **Project Name**: mybatis_plus_generator
- **Description**: No description available
- **Primary Language**: Unknown
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2022-03-26
- **Last Updated**: 2023-12-01
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# mybatis-plus 代码生成器
## 介绍
- 可以快速生成 Entity、Mapper、Mapper XML、Service、Controller 等各个模块的代码。
- [官网详细配置](https://baomidou.com/pages/981406/#%E6%95%B0%E6%8D%AE%E5%BA%93%E9%85%8D%E7%BD%AE-datasourceconfig)
## 生成步骤
1. 修改生成配置信息,数据库,表名等
2. 运行Generator.main()方法,生成代码
## 配置信息
```
FastAutoGenerator.create(URL, USER_NAME, PASSWORD).globalConfig(builder -> {
builder.author(AUTHOR) // 设置作者
.enableSwagger() // 开启 swagger 模式
.disableOpenDir()//禁止打开输出目录
.outputDir(OUT_PATH); // 指定输出目录
}).packageConfig(builder -> {
builder.parent(PACKAGE_NAME) // 设置父包名
.pathInfo(Collections.singletonMap(OutputFile.xml, XML_PATH)); // 设置mapperXml生成路径
}).strategyConfig(builder -> {
builder.addInclude(TABLES);// 设置需要生成的表名
}).strategyConfig(builder -> {
builder.entityBuilder()//Entity 策略配置
.enableLombok()//开启 lombok 模型
.enableChainModel()//开启链式模型
.idType(IdType.AUTO)//全局主键类型
.enableTableFieldAnnotation()//开启生成实体时生成字段注解
.addTableFills(new Column("create_time", FieldFill.INSERT))//插入自动填入时间
.addTableFills(new Column("update_time", FieldFill.INSERT_UPDATE))//更新自动填入时间
.formatFileName(ENTITY_NAME);//格式化文件名称
}).strategyConfig(builder -> {
builder.controllerBuilder()//Controller 策略配置
.enableRestStyle()//开启生成@RestController 控制器
.formatFileName(CONTROLLER_NAME);//格式化文件名称
}).strategyConfig(builder -> {
builder.mapperBuilder()//Mapper 策略配置
.enableBaseResultMap()//启用 BaseResultMap 生成
.enableBaseColumnList()//启用 BaseColumnList
.enableMapperAnnotation()//开启 @Mapper 注解
.formatMapperFileName(MAPPER_NAME)//格式化 mapper 文件名称
.formatXmlFileName(XML_NAME);//格式化 xml 实现类文件名称
}).templateEngine(new FreemarkerTemplateEngine())// 使用Freemarker引擎模板,默认的是Velocity引擎模板
.execute();//执行
```
## 依赖
- mysql驱动
```xml
mysql
mysql-connector-java
```
- mybatis-plus
```xml
com.baomidou
mybatis-plus-boot-starter
3.5.1
```
- mybatis-plus-generator
```xml
com.baomidou
mybatis-plus-generator
3.5.2
```
- 代码生成需要的包,没有会报错
```xml
org.freemarker
freemarker
```