Codegen.java 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. package com.jwipc;
  2. import com.baomidou.mybatisplus.generator.FastAutoGenerator;
  3. import com.baomidou.mybatisplus.generator.config.OutputFile;
  4. import com.baomidou.mybatisplus.generator.engine.FreemarkerTemplateEngine;
  5. import java.util.Collections;
  6. /**
  7. * <p> </p>
  8. *
  9. * @author ZhangJie
  10. * @version 1.0
  11. * @since JDK 1.8
  12. */
  13. public class Codegen {
  14. public static void main(String[] args) {
  15. //测试
  16. // final String url = "jdbc:oracle:thin:@//10.100.103.95:1521/agile9";
  17. // final String username = "srm";
  18. // final String password = "srm123";
  19. // final String url = "jdbc:sqlserver://10.100.101.51:1433;databaseName=SapSyncDB;encrypt=false;";
  20. // final String username = "singledb";
  21. // final String password = "H3&kjG8m4#Go";
  22. final String url = "jdbc:mysql://10.100.103.74:3306/jwipc_srm_test?characterEncoding=utf-8";
  23. final String username = "root";
  24. final String password = "JWIPC@2024!jwipc";
  25. final String author = "qzc";
  26. // final String author = "zhangjie";
  27. final String outputDir = "E:\\代码生成\\aa";
  28. // final String outputDir = "/Users/jiez/workspace/base";
  29. final String[] includeTables = {"t_contract_return_order_detail","t_contract_return_order"};
  30. final String[] strings = {"dev_", "t_", "c_", "sp_", "basis", "sys_", "t_tender_", "fin_"};
  31. final String packageName = "com.jwipc.contract";
  32. FastAutoGenerator.create(url, username, password)
  33. .globalConfig(builder -> {
  34. builder.author(author) // 设置作者
  35. .fileOverride() // 覆盖已生成文件
  36. .outputDir(outputDir); // 指定输出目录
  37. })
  38. .packageConfig(builder -> {
  39. builder.parent(packageName) // 设置父包名
  40. .pathInfo(Collections.singletonMap(OutputFile.xml, outputDir)); // 设置mapperXml生成路径
  41. })
  42. .strategyConfig(builder -> {
  43. builder.entityBuilder().enableLombok().enableFileOverride();
  44. builder.mapperBuilder().enableFileOverride();
  45. builder.serviceBuilder().enableFileOverride();
  46. builder.addInclude(includeTables) // 设置需要生成的表名
  47. .addTablePrefix(strings); // 设置过滤表前缀
  48. })
  49. .templateEngine(new FreemarkerTemplateEngine()) // 使用Freemarker引擎模板,默认的是Velocity引擎模板
  50. .execute();
  51. }
  52. }