SpGenerateApplication.java 6.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120
  1. package com.pj;
  2. import org.springframework.boot.SpringApplication;
  3. import org.springframework.boot.autoconfigure.SpringBootApplication;
  4. import com.fly.jdbc.cfg.FlyConfig;
  5. import com.fly.jdbc.cfg.FlyObjects;
  6. import com.fly.spring.SqlFlySetup;
  7. import com.pj.gen.GenUtil;
  8. import com.pj.gen.cfg.GenCfgManager;
  9. @SqlFlySetup
  10. @SpringBootApplication
  11. public class SpGenerateApplication {
  12. // 直接运行代码生成器
  13. public static void main(String[] args) {
  14. // 启动springboot
  15. SpringApplication.run(SpGenerateApplication.class, args);
  16. // =================================== 设置连接信息 ===================================
  17. FlyConfig config = new FlyConfig();
  18. config.setDriverClassName("com.mysql.cj.jdbc.Driver");
  19. config.setUrl("jdbc:mysql://47.101.143.145:3006/transport-system?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=UTC");
  20. config.setUsername("yun_user");
  21. config.setPassword("yun_Root@1123");
  22. config.setPrintSql(true); // 是否打印sql
  23. FlyObjects.setConfig(config); // 注入到框架中
  24. // !!!注意:如果报错创建连接失败,可尝试将连接字符串中的 useSSL=true 改为 useSSL=false
  25. // =================================== 你可以重写一些内部逻辑,填充一些功能 ===================================
  26. // 请参考本文件最底部示例
  27. // =================================== 一些全局设置 ===================================
  28. GenCfgManager.cfg
  29. .setProjectPath("E://developer_tools//idea//project//market-server//sp-service//transport-server//src//main//java//com//pj//") // 总项目地址 (生成代码的路径)
  30. .setServerProjectName("market-server/sp-service/sp-admin") // 服务端 - 项目名称
  31. // .setServerProjectName("sp-com/sp-core") // 服务端 - 项目名称 (sp-com多模块版填此格式)
  32. .setCodePath("src/main/java/") // 服务端代码 - 存放路径
  33. .setPackagePath( "com.pj.project") // 服务端代码 - 总包名
  34. .setPackage_utils("com.pj.utils.sg.*") // 服务端代码 - util类包地址
  35. .setAuthor("yzs") // 服务端代码 - 代码作者 (一定要换成您的大名哦,哈哈)
  36. .setAdminProjectName("market-admin-ui") // 后台管理 - 项目名称
  37. .setAdminCodePath("sa-view/") // 后台管理-代码存放目录
  38. .setApidocProjectName("sp-apidoc") // 接口文档 - 项目名称
  39. .setApidocCodePath("project/") // 接口文档 - 存放目录
  40. .setFileUploadWay(1) // 文件上传方式 (1=普通文件上传, 2=阿里云oss文件服务器[需要集成阿里云oss相关工具类])
  41. .setModelStyle(2) // 实体类字段风格 (1=保留下划线, 2=下划线转驼峰 [如果打开下划线转驼峰,需采用resultMap手动映射模式,或打开yml配置文件的 map-underscore-to-camel-case=true 选项])
  42. .setResultMapWay(1) // resultMap映射模式 (1=自动模式, 2=手动模式)
  43. .setModelVisitWay(1) // 实体类的访问权限修饰符 (1=private, 2=public)
  44. .setModelDocWay(3) // 实体类的注释形式 (1=行尾注释, 2=单行双星文档注释, 3=标准双星文档注释)
  45. .setModelAddLine(1) // 实体类的每个字段之间是否隔一个空行(1=是, 2=否)
  46. .setUtilDocWay(1) // util类的注释风格 (1=行尾注释, 2=行上注释, 3=无注释)
  47. .setPackageUnderlineTo("_") // 将包名中的下划线强制转换成指定字符串,比如:$、2、4 或者空字符串""
  48. .setApiMappingWay(1) // apiMapping模式 (1=@RequsetMapping, 2=@GetMapping, 3=@PostMapping)
  49. .setSqlSelectColumnWay(1) // mapper.xml中的通用查询,是select * 还是所有列 (1=select *, 2=select 所有列)
  50. .setSqlEnclose(2) // 生成的sql语句中,是否将字段用`包裹起来(1=是,2=否)
  51. .setSaTokenAuthWay(2) // 鉴权代码的方式 (1=代码式鉴权, 2=注解式鉴权)
  52. .setMybatisPlus(true) // 是否生成的代码遵循mybatis-plus风格(继承一些mp的特定父类)
  53. .setOutFC(false) // 是否输出FC.java工厂类
  54. .setDefaultMeunIcon("el-icon-folder-opened") // 生成后台管理页面时,默认的菜单图标
  55. .setWebLibImportWay(2) // 前端js库导入方式(1=cdn导入, 2=本地导入[需将sa-admin附带js包复制到kj文件夹])
  56. .addTableName("tb_car_record") // 添加要生成的表 (单个添加)
  57. // .addTableAll() // 添加要生成的表 (一次性添加所有表)
  58. .removeTableName("sp_role", "sp_role_permission", "sp_admin", "sp_apilog", "sp_cfg") // 移除这些内置的表,不必生成代码
  59. ;
  60. System.out.println("\n\n\n--------------------------------------------\n\n\n");
  61. // =================================== 开始读取并输出 ===================================
  62. GenUtil.doRead(); // 从数据库读取数据
  63. GenUtil.doOutMyBatis(); // 输出java代码 (mybatis版本)
  64. GenUtil.doOutMyBatisService(); // 输出java代码 - 追加service层
  65. GenUtil.doOutAdminHtml(); // 输出 admin后台管理页面
  66. // GenUtil.doOutApidoc(); // 输出 接口文档页面
  67. // =================================== 完结输出 ===================================
  68. System.out.println("\n\n------------------------------ 完结撒花 ------------------------------");
  69. System.out.println(" - sa-plus 快速开发平台, 当前版本v1.26.0,更新于2021-10-24 ");
  70. System.out.println(" - 在线文档: http://sa-plus.dev33.cn");
  71. System.out.println(" - 开源地址: https://github.com/click33/sa-plus\n\n");
  72. }
  73. // =================================== 你可以重写一些内部逻辑,填充一些功能 ===================================
  74. // 请参考本文件最底部示例
  75. // // 例如 以下代码代表截取掉表前缀 (把这段代码复制上去)
  76. // DbModelManager.manager = new DbModelManager() {
  77. // // 重写创建 DbTable 的函数
  78. // public DbTable getDbTable() {
  79. // return new DbTable() {
  80. // // 重写获取模块名称的函数
  81. // public String getMkName(){
  82. // String tableName = this.getTableName();
  83. // return tableName.replaceAll("sys_", "").replaceAll("_table", ""); // 结果: sys_user_table --> user
  84. // }
  85. // };
  86. // }
  87. // };
  88. // ================== end
  89. }