package com.project.hyb.biz.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,"biz", getTables(new String[]{ "art_attachments" })); } 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://159.75.75.84:3306/artoffice_museum", "root","6SD%KraOnB") .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.project.hyb") .moduleName(moduleName) .entity("domain.entity") .service("service") .serviceImpl("service.impl") // .controller("manage.controller") .mapper("mapper") .xml("test.mapper") .pathInfo(Collections.singletonMap(OutputFile.mapperXml,path+"\\src\\main\\resources\\mapper\\"+moduleName)); }) .strategyConfig(builder -> { builder.addInclude(tables) // .addTablePrefix("tb_") .serviceBuilder() .formatServiceFileName("%sService") .formatServiceImplFileName("%sServiceImpl") .entityBuilder() .enableLombok() // .logicDeleteColumnName("enable") // .enableTableFieldAnnotation() // .superClass(BaseEntity.class) .controllerBuilder() .formatFileName("%sController") .enableRestStyle() .mapperBuilder() .superClass(BaseMapper.class) .formatMapperFileName("%sMapper") .enableMapperAnnotation() .formatXmlFileName("%sMapper"); }) // .templateEngine(new FreemarkerTemplateEngine()) // 使用Freemarker引擎模板,默认的是Velocity引擎模板 .execute(); } }