package com.tkgm.kf.properties.db; 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.converts.MySqlTypeConvert; import com.baomidou.mybatisplus.generator.config.rules.DbType; import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy; /** * 代码模板生成 * @author w_liusc * */ public class Generator { public static void main(String[] args) { String packageName = "record"; boolean serviceNameStartWithI = false;// user -> UserService, 设置成true: user -> IUserService //GenerateApi(serviceNameStartWithI, packageName, "t_dict_type");// 修改为你的表名 GenerateAdmin(serviceNameStartWithI, packageName, "t_mail_list");// 修改为你的表名 } protected static void GenerateApi(boolean serviceNameStartWithI, String packageName, String... tableNames) { System.out.println("开始生成接口模板...."); // 全局配置 GlobalConfig config = new GlobalConfig(); config.setActiveRecord(false) .setEnableCache(false) .setAuthor("lsc") .setOutputDir("D:\\workspace\\tkgm-pom\\tkgm-kf\\src\\main\\java") .setOpen(false); // 数据源配置 DataSourceConfig dataSourceConfig = new DataSourceConfig(); dataSourceConfig.setDbType(DbType.MYSQL) .setUrl("jdbc:mysql://10.92.1.17:3306/tkgmkf_db") .setUsername("w_liusc") .setPassword("tkamcgm.00") .setDriverName("com.mysql.cj.jdbc.Driver") .setTypeConvert(new MySqlTypeConvert()); // 配置策略 StrategyConfig strategyConfig = new StrategyConfig(); strategyConfig.setCapitalMode(true) .setEntityLombokModel(false) .setDbColumnUnderline(true) .setTablePrefix(new String[] { "t_" })// 此处可以修改为您的表前缀 .setNaming(NamingStrategy.underline_to_camel) .setSuperControllerClass("com.tkgm.kf.properties.base.ApiController") .setInclude(tableNames);// 修改替换成你需要的表名,多个表名传数组 // 包配置 PackageConfig packageInfo = new PackageConfig(); packageInfo.setParent("com.tkgm.kf")// 自定义包路径 .setController("api." + packageName + ".controller") .setService("api." + packageName + ".service") .setServiceImpl("api." + packageName + ".service.impl") .setEntity("mapper.po") .setMapper("mapper") .setXml("mapper"); // 执行配置 new AutoGenerator() .setGlobalConfig(config) .setDataSource(dataSourceConfig) .setStrategy(strategyConfig) .setPackageInfo(packageInfo) .execute(); System.out.println("接口模板已生成,请刷新项目目录"); } protected static void GenerateAdmin(boolean serviceNameStartWithI, String packageName, String... tableNames) { System.out.println("开始生成后台模板"); // 全局配置 GlobalConfig config = new GlobalConfig(); config.setActiveRecord(false) .setEnableCache(false).setAuthor("lsc") .setOutputDir("D:\\workspace\\tkgm-pom\\tkgm-kf\\src\\main\\java") .setOpen(false); // 数据源配置 DataSourceConfig dataSourceConfig = new DataSourceConfig(); dataSourceConfig.setDbType(DbType.MYSQL) .setUrl("jdbc:mysql://10.92.1.17:3306/tkgmkf_db") .setUsername("w_liusc") .setPassword("tkamcgm.00") .setDriverName("com.mysql.cj.jdbc.Driver") .setTypeConvert(new MySqlTypeConvert()); // 配置策略 StrategyConfig strategyConfig = new StrategyConfig(); strategyConfig.setCapitalMode(true) .setEntityLombokModel(false) .setDbColumnUnderline(true) .setTablePrefix(new String[] { "t_" })// 此处可以修改为您的表前缀 .setNaming(NamingStrategy.underline_to_camel) .setSuperControllerClass("com.tkgm.kf.properties.base.BaseController") .setInclude(tableNames);// 修改替换成你需要的表名,多个表名传数组 // 包配置 PackageConfig packageInfo = new PackageConfig(); packageInfo.setParent("com.tkgm.kf")// 自定义包路径 .setController("admin." + packageName + ".controller") .setService("admin." + packageName + ".service") .setServiceImpl("admin." + packageName + ".service.impl") .setEntity("mapper.po") .setMapper("mapper") .setXml("mapper"); // 执行配置 new AutoGenerator().setGlobalConfig(config) .setDataSource(dataSourceConfig) .setStrategy(strategyConfig) .setPackageInfo(packageInfo) .execute(); System.out.println("后台模板已生成,请刷新项目目录"); } }
<!-- mp --> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>2.3</version> </dependency> <!-- velocity 依赖,用于代码生成 --> <dependency> <groupId>org.apache.velocity</groupId> <artifactId>velocity-engine-core</artifactId> <version>2.0</version> </dependency>