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(); } }