添加基础代码生成器,项目管理子模块
This commit is contained in:
@ -0,0 +1,92 @@
|
||||
package com.fastbee.common.utils.generate;
|
||||
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.baomidou.mybatisplus.generator.FastAutoGenerator;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
|
||||
/**
|
||||
* 代码生成器:根据数据库表结构,生成对应的实体类、Mapper接口、Service接口、Controller等基础代码,
|
||||
* @author 蒾酒
|
||||
*/
|
||||
public class CodeGenerator {
|
||||
public static void main(String[] args) {
|
||||
getCode();
|
||||
}
|
||||
|
||||
public static void getCode() {
|
||||
//TODO 修改为自己的数据库信息
|
||||
String url = "jdbc:mysql://w.hanzhenyun.com:3306/wumei2.4?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai";
|
||||
String username = "wumei2.4";
|
||||
String password = "rtB8EhbRRYSGyxHw";
|
||||
//TODO 修改为自己的表名
|
||||
List<String> tables = new ArrayList<>();//需要生成对应代码的表名的集合
|
||||
tables.add("project");
|
||||
|
||||
FastAutoGenerator.create(url, username, password)
|
||||
//全局配置----------------------------------------------------------------------------------------
|
||||
.globalConfig(builder -> {
|
||||
builder
|
||||
.author("蒾酒")//TODO 修改为自己名称
|
||||
.outputDir(System.getProperty("user.dir") + "\\fastbee-service\\fastbee-project-service\\src\\main\\java")//生成文件输出基础路径(父模块路径)
|
||||
// .enableSwagger() //开启swagger,会自动添加swagger相关注解
|
||||
.commentDate("yyyy-MM-dd");//日期格式
|
||||
})
|
||||
|
||||
//包名配置--------------------------------------------------------------------------------------------
|
||||
.packageConfig(builder ->
|
||||
builder
|
||||
.parent("com.fastbee.project")//TODO 修改为项目的具体业务模块
|
||||
.entity("domain")//数据库实体类输出路径
|
||||
.service("service")//业务接口输出路径
|
||||
.serviceImpl("service.impl")//业务实现类输出路径
|
||||
// .controller("controller")//控制器输出路径
|
||||
.mapper("mapper")//映射文件输出路径
|
||||
.xml("mapper/xml")//XML文件输出路径
|
||||
)
|
||||
//策略配置-----------------------------------------------------------------------------------------
|
||||
.strategyConfig(builder -> {
|
||||
builder
|
||||
.addInclude(tables)// 需要生成代码对应的表,若需要生成全部表则注释该行解放下一行
|
||||
// .addInclude("all")//生成全部表
|
||||
// .addTablePrefix("p_")//表前缀过滤,例如“p_”开头的表不会生成对应代码
|
||||
|
||||
//实体策略配置
|
||||
.entityBuilder()
|
||||
.enableFileOverride()// TODO 开启覆盖已生成的entity文件,关闭则注释本行
|
||||
.enableLombok()// 自动添加lombok注解@Getter @Setter
|
||||
.logicDeleteColumnName("deleted")// 指定逻辑删除字段名自动为其添加逻辑删除字段注解
|
||||
.enableTableFieldAnnotation()//启用表字段注解@TableField
|
||||
|
||||
//Mapper策略配置
|
||||
.mapperBuilder()
|
||||
.enableBaseResultMap() // 生成通用的resultMap
|
||||
.superClass(BaseMapper.class)
|
||||
.formatMapperFileName("%sMapper")//mapper文件后缀,如UserMapper
|
||||
// .enableFileOverride()// TODO 开启覆盖已生成的mapper文件(谨慎开启),关闭则注释本行
|
||||
.formatXmlFileName("%sMapper")//xml文件后缀,如UserMapper.xml
|
||||
|
||||
//Service策略配置
|
||||
.serviceBuilder()
|
||||
// .enableFileOverride()//TODO 开启覆盖已生成的service文件(谨慎开启),关闭则注释本行
|
||||
.formatServiceFileName("%sService")
|
||||
.formatServiceImplFileName("%sServiceImpl")
|
||||
|
||||
//Controller策略配置
|
||||
.controllerBuilder()
|
||||
.enableHyphenStyle() // 映射路径使用连字符格式
|
||||
.formatFileName("%sController")
|
||||
// .enableFileOverride()// TODO 开启覆盖已生成的controller文件(谨慎开启),关闭则注释本行
|
||||
.enableRestStyle();//启用rest风格自动添加@RestController
|
||||
|
||||
|
||||
})
|
||||
|
||||
.execute();
|
||||
}
|
||||
|
||||
|
||||
}
|
Reference in New Issue
Block a user