修改代码生成器

This commit is contained in:
GYJ
2025-02-12 14:29:10 +08:00
parent 87e8c59cf0
commit 88d44f0a77
6 changed files with 191 additions and 27 deletions

View File

@@ -24,35 +24,42 @@ public class Main {
dataSource.setUsername(USERNAME);
dataSource.setPassword(PASSWORD);
//创建配置内容,两种风格都可以。
GlobalConfig globalConfig = createGlobalConfigUseStyle();
//通过 datasource 和 globalConfig 创建代码生成器
Generator generator = new Generator(dataSource, globalConfig);
//生成代码
generator.generate();
}
public static GlobalConfig createGlobalConfigUseStyle() {
//创建配置内容
GlobalConfig globalConfig = new GlobalConfig();
String currentWorkingDirectory = System.getProperty("user.dir");
// String projectPath = currentWorkingDirectory + "/cash-service/system-service";
String projectPath = currentWorkingDirectory + "/cash-service/account-service";
String projectPath = currentWorkingDirectory + "/cash-service/system-service";
// String projectPath = currentWorkingDirectory + "/cash-service/account-service";
// String projectPath = currentWorkingDirectory + "/cash-service/product-service";
// String projectPath = currentWorkingDirectory + "/cash-service/order-service";
String packageName = "com.czg.service.system";
// String packageName = "com.czg.service.account";
// String packageName = "com.czg.service.product";
// String packageName = "com.czg.service.order";
String servicePackageName = "com.czg.system";
// String servicePackageName = "com.czg.account";
// String servicePackageName = "com.czg.product";
// String servicePackageName = "com.czg.order";
// 生成 mapper 和 service实现
GlobalConfig globalConfig = createGlobalConfigUseStyle(projectPath, packageName, "tb", "tb_version");
Generator generator = new Generator(dataSource, globalConfig);
generator.generate();
// 生成 entity 和 service
GlobalConfig serviceConfig = createServiceGlobalConfigUseStyle(currentWorkingDirectory + "/cash-common/cash-common-service",
servicePackageName, "tb", "tb_version");
Generator serviceGenerator = new Generator(dataSource, serviceConfig);
serviceGenerator.generate();
}
public static GlobalConfig createGlobalConfigUseStyle(String projectPath, String packageName, String tablePrefix, String... tableNames) {
//创建配置内容
GlobalConfig globalConfig = new GlobalConfig();
//设置根包
globalConfig.getPackageConfig()
.setSourceDir(projectPath + "/src/main/java")
.setBasePackage("com.czg.service.account");
globalConfig.getServiceConfig()
.setClassSuffix("Service")
.setSuperClass(IService.class);
globalConfig.enableService();
.setBasePackage(packageName);
globalConfig.getServiceImplConfig()
.setClassSuffix("ServiceImpl")
@@ -68,17 +75,39 @@ public class Main {
//设置表前缀和只生成哪些表setGenerateTable 未配置时,生成所有表
globalConfig.getStrategyConfig()
.setTablePrefix("tb")
.setGenerateTable("tb_user_info");
.setTablePrefix(tablePrefix)
.setGenerateTable(tableNames);
//设置生成 mapper
globalConfig.enableMapper();
return globalConfig;
}
public static GlobalConfig createServiceGlobalConfigUseStyle(String projectPath, String packageName, String tablePrefix, String... tableNames) {
//创建配置内容
GlobalConfig globalConfig = new GlobalConfig();
//设置根包
globalConfig.getPackageConfig()
.setSourceDir(projectPath + "/src/main/java")
.setBasePackage(packageName);
globalConfig.getServiceConfig()
.setClassSuffix("Service")
.setSuperClass(IService.class);
globalConfig.enableService();
//设置表前缀和只生成哪些表setGenerateTable 未配置时,生成所有表
globalConfig.getStrategyConfig()
.setTablePrefix(tablePrefix)
.setGenerateTable(tableNames);
//设置生成 entity 并启用 Lombok
globalConfig.enableEntity()
.setWithLombok(true)
.setJdkVersion(23);
//设置生成 mapper
globalConfig.enableMapper();
//可以单独配置某个列
ColumnConfig createTime = new ColumnConfig();
createTime.setColumnName("create_time");