package com.fdkankan.download.generate; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.generator.FastAutoGenerator; import com.baomidou.mybatisplus.generator.config.OutputFile; import com.baomidou.mybatisplus.generator.config.rules.DateType; import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; import java.util.List; public class AutoGenerate { public static void main(String[] args) { String path =System.getProperty("user.dir") + "."; generate(path,"test", getTables(new String[]{ "t_scene_plus","t_scene_plus_ext" })); } public static List getTables(String [] tableNames){ return new ArrayList<>(Arrays.asList(tableNames)); } public static void generate(String path,String moduleName, List tables){ FastAutoGenerator.create("jdbc:mysql://120.24.144.164:3306/4dkankan_v4", "root","4Dage@4Dage#@168") .globalConfig(builder -> { builder.author("") //作者 .outputDir(path+"\\src\\main\\java") //输出路径(写到java目录) //.enableSwagger() //开启swagger .commentDate("yyyy-MM-dd") .dateType(DateType.ONLY_DATE) .fileOverride(); //开启覆盖之前生成的文件 }) .packageConfig(builder -> { builder.parent("com.fdkankan") .moduleName(moduleName) .entity("entity") .service("service") .serviceImpl("service.impl") .controller("controller") .mapper("mapper") .xml("test.mapper") .pathInfo(Collections.singletonMap(OutputFile.mapperXml,path+"\\src\\main\\resources\\mapper\\"+moduleName)); }) .strategyConfig(builder -> { builder.addInclude(tables) .addTablePrefix("t_") .serviceBuilder() .formatServiceFileName("I%sService") .formatServiceImplFileName("%sServiceImpl") .entityBuilder() .enableLombok() .logicDeleteColumnName("rec_status") .enableTableFieldAnnotation() // .superClass(BaseEntity.class) .controllerBuilder() .formatFileName("%sController") .enableRestStyle() .mapperBuilder() .superClass(BaseMapper.class) .formatMapperFileName("I%sMapper") .enableMapperAnnotation() .formatXmlFileName("%sMapper"); }) // .templateEngine(new FreemarkerTemplateEngine()) // 使用Freemarker引擎模板,默认的是Velocity引擎模板 .execute(); } }