实用的java代码生成器,开箱即用(基于mybatisplus的AutoGenerator)
生活随笔
收集整理的這篇文章主要介紹了
实用的java代码生成器,开箱即用(基于mybatisplus的AutoGenerator)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
spring-boot工程下,自動生成代碼,controller層,service層,mapper層。
根據數據庫配置好的表,逆向生成實體類和各層結構
1、引入maven
<dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><version>3.0.6</version></dependency><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus</artifactId><version>3.0.6</version></dependency><!-- MySql --><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><scope>runtime</scope></dependency><!-- velocity 模板引擎 --><dependency><groupId>org.apache.velocity</groupId><artifactId>velocity-engine-core</artifactId><version>2.0</version></dependency><!-- swagger --><dependency><groupId>io.springfox</groupId><artifactId>springfox-swagger2</artifactId><version>2.8.0</version></dependency><dependency><groupId>io.springfox</groupId><artifactId>springfox-swagger-ui</artifactId><version>2.8.0</version></dependency>2、編寫CodeGenerator類,執行main方法
我希望配置一個com.parent.module的模塊,本地數據庫名字是aa,得事先建好,表名是product
public class CodeGenerator {public static void main(String[] args) {// 1、創建代碼生成器AutoGenerator mpg = new AutoGenerator();// 2、全局配置GlobalConfig gc = new GlobalConfig();String projectPath = System.getProperty("user.dir");gc.setOutputDir(projectPath + "/src/main/java");gc.setAuthor("zs"); // 開發人員gc.setOpen(false); // 生成后是否打開資源管理器gc.setFileOverride(false); // 重新生成時文件是否覆蓋gc.setServiceName("%sService"); // 去掉Service接口的首字母Igc.setIdType(IdType.ID_WORKER_STR); // 主鍵策略gc.setDateType(DateType.ONLY_DATE);// 定義生成的實體類中日期類型gc.setSwagger2(true); // 開啟Swagger2模式mpg.setGlobalConfig(gc);// 3、數據源配置DataSourceConfig dsc = new DataSourceConfig();dsc.setUrl("jdbc:mysql://localhost:3306/aa?serverTimezone=GMT%2B8"); // 驅動連接的urldsc.setDriverName("com.mysql.cj.jdbc.Driver"); // 驅動名稱dsc.setUsername("root"); // 用戶名dsc.setPassword("root"); // 密碼dsc.setDbType(DbType.MYSQL);mpg.setDataSource(dsc);// 4、包配置PackageConfig pc = new PackageConfig();pc.setModuleName("moduleName"); // 模塊名pc.setParent("com.parent");pc.setController("controller");pc.setEntity("entity");pc.setService("service");pc.setMapper("mapper");mpg.setPackageInfo(pc);// 5、策略配置StrategyConfig strategy = new StrategyConfig();strategy.setInclude("product"); // 表名稱strategy.setNaming(NamingStrategy.underline_to_camel);// 數據庫表映射到實體的命名策略strategy.setTablePrefix(pc.getModuleName() + "_"); // 生成實體時去掉表前綴strategy.setColumnNaming(NamingStrategy.underline_to_camel);// 數據庫表字段映射到實體的命名策略strategy.setEntityLombokModel(true); // lombok 模型 @Accessors(chain = true) setter鏈式操作strategy.setRestControllerStyle(true); // restful api風格控制器strategy.setControllerMappingHyphenStyle(true); // url中駝峰轉連字符mpg.setStrategy(strategy);// 6、執行mpg.execute();} }3、最終執行效果
總結
以上是生活随笔為你收集整理的实用的java代码生成器,开箱即用(基于mybatisplus的AutoGenerator)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: win8 必须重新启动计算机才能关闭用户
- 下一篇: [转载]--- 开箱即用的springb