Mybatis Plus 3.x 自動生成代碼

package com.tonytaotao.dtsc.common.utils; import com.baomidou.mybatisplus.annotation.DbType; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.generator.AutoGenerator; import com.baomidou.mybatisplus.generator.config.DataSourceConfig; import com.baomidou.mybatisplus.generator.config.GlobalConfig; import com.baomidou.mybatisplus.generator.config.PackageConfig; import com.baomidou.mybatisplus.generator.config.StrategyConfig; import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy; import com.baomidou.mybatisplus.generator.engine.VelocityTemplateEngine; public class CodeGenerator { public static void main(String[] args) { // 生成文件輸出路徑 String outputDir = "E:\\xxx"; // 作者 String authorName = "xxx"; // 包名全路徑 String packageNameAllPath = "com.tonytaotao.dtsc"; // 模塊名 String moduleName = "module"; // 接口是否以I開頭 boolean serviceNameStartWithI = false; // 對應表 String[] tableName = {"test"}; String dbUrl = "jdbc:mysql://localhost:3306/dtsc?useSSL=false&useUnicode=true&characterEncoding=UTF8&allowPublicKeyRetrieval=true&serverTimezone=GMT"; String dbUserName = "root"; String dbPassword = "123456"; String dbDriver = "com.mysql.jdbc.Driver"; DbType dbType = DbType.MYSQL; // 包配置 PackageConfig packageConfig = new PackageConfig(); packageConfig.setParent(packageNameAllPath) .setModuleName(moduleName) .setController("controller") .setService("service") .setServiceImpl("service.impl") .setMapper("mapper") .setXml("mapper.xml") .setEntity("entity"); // 數據源配置 DataSourceConfig dataSourceConfig = new DataSourceConfig(); dataSourceConfig.setDbType(dbType) .setDriverName(dbDriver) .setUrl(dbUrl) .setUsername(dbUserName) .setPassword(dbPassword); // 策略配置 StrategyConfig strategyConfig = new StrategyConfig(); strategyConfig.setCapitalMode(true) // 是否大寫命名 .setRestControllerStyle(true) // 生成 @RestController 控制器 .setEntityLombokModel(true) // 是否爲lombok模型 .setNaming(NamingStrategy.underline_to_camel) // 數據庫表映射到實體的命名策略 .setColumnNaming(NamingStrategy.underline_to_camel) // 數據庫表字段映射到實體的命名策略, 未指定按照 naming 執行 .setControllerMappingHyphenStyle(true) // 駝峯轉連字符 .setInclude(tableName); // 需要包含的表名 // 全局配置 GlobalConfig globalConfig = new GlobalConfig(); globalConfig.setActiveRecord(true) .setAuthor(authorName) .setOutputDir(outputDir) .setIdType(IdType.AUTO) .setFileOverride(true) .setOpen(false); if (!serviceNameStartWithI) { globalConfig.setServiceName("%sService"); } // 代碼生成器 AutoGenerator autoGenerator = new AutoGenerator(); autoGenerator.setGlobalConfig(globalConfig) .setDataSource(dataSourceConfig) .setStrategy(strategyConfig) .setPackageInfo(packageConfig) .setTemplateEngine(new VelocityTemplateEngine()); autoGenerator.execute(); } }
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章