AutoGenerate.java 3.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. package com.fdkankan.download.generate;
  2. import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  3. import com.baomidou.mybatisplus.generator.FastAutoGenerator;
  4. import com.baomidou.mybatisplus.generator.config.OutputFile;
  5. import com.baomidou.mybatisplus.generator.config.rules.DateType;
  6. import java.util.ArrayList;
  7. import java.util.Arrays;
  8. import java.util.Collections;
  9. import java.util.List;
  10. public class AutoGenerate {
  11. public static void main(String[] args) {
  12. String path =System.getProperty("user.dir") + ".";
  13. generate(path,"download", getTables(new String[]{
  14. "t_scene_resource_camera"
  15. }));
  16. }
  17. public static List<String> getTables(String [] tableNames){
  18. return new ArrayList<>(Arrays.asList(tableNames));
  19. }
  20. public static void generate(String path,String moduleName, List<String> tables){
  21. FastAutoGenerator.create("jdbc:mysql://172.31.175.234:3306/4dkankan_v4",
  22. "root","Djqk$2024-vr#")
  23. .globalConfig(builder -> {
  24. builder.author("") //作者
  25. .outputDir(path+"\\src\\main\\java") //输出路径(写到java目录)
  26. //.enableSwagger() //开启swagger
  27. .commentDate("yyyy-MM-dd")
  28. .dateType(DateType.ONLY_DATE)
  29. .fileOverride(); //开启覆盖之前生成的文件
  30. })
  31. .packageConfig(builder -> {
  32. builder.parent("com.fdkankan")
  33. .moduleName(moduleName)
  34. .entity("entity")
  35. .service("service")
  36. .serviceImpl("service.impl")
  37. .controller("controller")
  38. .mapper("mapper")
  39. .xml("test.mapper")
  40. .pathInfo(Collections.singletonMap(OutputFile.mapperXml,path+"\\src\\main\\resources\\mapper\\"+moduleName));
  41. })
  42. .strategyConfig(builder -> {
  43. builder.addInclude(tables)
  44. .addTablePrefix("t_")
  45. .serviceBuilder()
  46. .formatServiceFileName("I%sService")
  47. .formatServiceImplFileName("%sServiceImpl")
  48. .entityBuilder()
  49. .enableLombok()
  50. .logicDeleteColumnName("rec_status")
  51. .enableTableFieldAnnotation()
  52. // .superClass(BaseEntity.class)
  53. .controllerBuilder()
  54. .formatFileName("%sController")
  55. .enableRestStyle()
  56. .mapperBuilder()
  57. .superClass(BaseMapper.class)
  58. .formatMapperFileName("I%sMapper")
  59. .enableMapperAnnotation()
  60. .formatXmlFileName("%sMapper");
  61. })
  62. // .templateEngine(new FreemarkerTemplateEngine()) // 使用Freemarker引擎模板,默认的是Velocity引擎模板
  63. .execute();
  64. }
  65. }