import com.baomidou.mybatisplus.annotation.IdType;
|
import com.baomidou.mybatisplus.generator.FastAutoGenerator;
|
import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
|
import com.baomidou.mybatisplus.generator.engine.VelocityTemplateEngine;
|
import com.sinata.common.entity.BaseModel;
|
import org.junit.jupiter.api.Test;
|
|
public class MybatisPlusGeneraotr {
|
|
@Test
|
void mybatisPlusGenerator() {
|
FastAutoGenerator
|
// 数据源配置
|
.create(
|
"jdbc:dm://localhost:5236/MEDICAL_WASTE?rewriteBatchedStatements=true&zeroDateTimeBehavior=convertToNull&useUnicode=true&characterEncoding=utf-8",
|
"SYSDBA", // 达梦数据库模式名
|
"SYSDBA" // 密码
|
)
|
// 全局配置
|
.globalConfig(
|
builder -> {
|
builder
|
.author("mitao") // 作者
|
//.outputDir(System.getProperty("user.dir") + "/src/main/java") // 指定输出目录
|
.outputDir("F:\\喜望软件\\code\\YiFeiNN\\medicalWaste-system\\src\\main\\java") // 指定输出目录
|
.commentDate("yyyy-MM-dd")// 注释的日期
|
// 修改Date类型为LocalDateTime
|
//.dateType(DateType.ONLY_DATE)
|
.enableSwagger()
|
.fileOverride()
|
.disableOpenDir(); // 禁止打开输出目录,默认:true
|
}
|
)
|
// 包配置
|
.packageConfig(
|
builder -> {
|
builder
|
//.moduleName(System.getProperty("user.dir").substring(System.getProperty("user.dir").lastIndexOf("\\") + 1)) // 设置父包模块名
|
.parent("com.sinata.system") // 父包名
|
.entity("domain") // 实体类包名
|
//.pathInfo(Collections.singletonMap(OutputFile.mapperXml, System.getProperty("user.dir") + "/src/main/resources/mapper")) // 设置 mapperXml 生成路径
|
.other("utils"); // 自定义文件包名
|
}
|
)
|
// 策略配置
|
.strategyConfig(
|
builder -> {
|
builder
|
// 在这里添加数据库表名
|
//.addInclude("MW_BOX")
|
.addInclude("MW_TRANSIT_CAR_COLLECT_POINT")// 设置需要生成的表名,多个表之间可以用逗号隔开
|
// .addExclude("BBZQ_USER","BBZQ_USER_LOG")
|
.controllerBuilder().enableRestStyle() // controller配置策略
|
.serviceBuilder().formatServiceFileName("%sService") // service配置策略
|
.mapperBuilder().enableBaseColumnList().enableBaseResultMap().enableMapperAnnotation() // mapper配置策略
|
.entityBuilder().enableLombok().enableRemoveIsPrefix().enableTableFieldAnnotation() // 实体配置策略
|
//.logicDeleteColumnName("del_flag") // 逻辑删除字段名
|
.naming(NamingStrategy.underline_to_camel) // 数据库表映射到实体的命名策略,下划线转驼峰
|
.columnNaming(NamingStrategy.underline_to_camel) // 数据库表字段映射的命名策略,下划线转驼峰
|
.superClass(BaseModel.class)
|
//.addTableFills( // 添加表字段填充,"create_time"自动填充为插入时间,"update_time"自动填充为修改时间
|
// new Column("create_time", FieldFill.INSERT),
|
// new Column("create_by", FieldFill.INSERT),
|
// new Column("update_time", FieldFill.INSERT_UPDATE),
|
// new Column("update_by", FieldFill.INSERT_UPDATE)
|
//)
|
.idType(IdType.AUTO);
|
}
|
)
|
// 模板配置
|
.templateEngine(new VelocityTemplateEngine()) // 使用的是默认的 Velocity 引擎模板
|
// 执行
|
.execute();
|
}
|
}
|