@@ -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 " ) ;