From 5059310ee50bf675eb11c858281662d00f23285c Mon Sep 17 00:00:00 2001 From: Suomm <1474983351@qq.com> Date: Thu, 13 Jul 2023 19:12:10 +0800 Subject: [PATCH 1/5] =?UTF-8?q?fix:=20=E7=BB=9F=E4=B8=80=20GlobalConfig=20?= =?UTF-8?q?=E4=B8=AD=E6=AF=8F=E9=83=A8=E5=88=86=20setter/getter=20?= =?UTF-8?q?=E5=91=BD=E5=90=8D=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/mybatisflex/codegen/config/GlobalConfig.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/mybatis-flex-codegen/src/main/java/com/mybatisflex/codegen/config/GlobalConfig.java b/mybatis-flex-codegen/src/main/java/com/mybatisflex/codegen/config/GlobalConfig.java index a7036647..a5f7669c 100644 --- a/mybatis-flex-codegen/src/main/java/com/mybatisflex/codegen/config/GlobalConfig.java +++ b/mybatis-flex-codegen/src/main/java/com/mybatisflex/codegen/config/GlobalConfig.java @@ -1248,28 +1248,28 @@ public class GlobalConfig { /** * @see TableDefConfig#getPropertiesNameStyle() */ - public TableDefConfig.NameStyle getPropertiesNameStyle() { + public TableDefConfig.NameStyle getTableDefPropertiesNameStyle() { return getTableDefConfig().getPropertiesNameStyle(); } /** * @see TableDefConfig#setPropertiesNameStyle(TableDefConfig.NameStyle) */ - public void setPropertiesNameStyle(TableDefConfig.NameStyle propertiesNameStyle) { + public void setTableDefPropertiesNameStyle(TableDefConfig.NameStyle propertiesNameStyle) { getTableDefConfig().setPropertiesNameStyle(propertiesNameStyle); } /** * @see TableDefConfig#getInstanceSuffix() */ - public String getInstanceSuffix() { + public String getTableDefInstanceSuffix() { return getTableDefConfig().getInstanceSuffix(); } /** * @see TableDefConfig#setInstanceSuffix(String) */ - public void setInstanceSuffix(String instanceSuffix) { + public void setTableDefInstanceSuffix(String instanceSuffix) { getTableDefConfig().setInstanceSuffix(instanceSuffix); } From 1a8623f02f02674e36e8e3101eda64992502fff0 Mon Sep 17 00:00:00 2001 From: Suomm <1474983351@qq.com> Date: Thu, 13 Jul 2023 19:12:47 +0800 Subject: [PATCH 2/5] =?UTF-8?q?feat:=20EntityConfig=20=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E6=BA=90=E8=AE=BE=E7=BD=AE=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../codegen/config/EntityConfig.java | 22 ++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/mybatis-flex-codegen/src/main/java/com/mybatisflex/codegen/config/EntityConfig.java b/mybatis-flex-codegen/src/main/java/com/mybatisflex/codegen/config/EntityConfig.java index 0a3b4edf..35ea08bb 100644 --- a/mybatis-flex-codegen/src/main/java/com/mybatisflex/codegen/config/EntityConfig.java +++ b/mybatis-flex-codegen/src/main/java/com/mybatisflex/codegen/config/EntityConfig.java @@ -56,6 +56,11 @@ public class EntityConfig { */ private boolean withLombok; + /** + * 实体类数据源。 + */ + private String dataSource; + /** * 获取类前缀。 */ @@ -146,4 +151,19 @@ public class EntityConfig { return this; } -} \ No newline at end of file + /** + * 获取实体类数据源。 + */ + public String getDataSource() { + return dataSource; + } + + /** + * 设置实体类数据源。 + */ + public EntityConfig setDataSource(String dataSource) { + this.dataSource = dataSource; + return this; + } + +} From 0cceda260787f3e8b80f60ec2a4585920474c715 Mon Sep 17 00:00:00 2001 From: Suomm <1474983351@qq.com> Date: Thu, 13 Jul 2023 19:15:35 +0800 Subject: [PATCH 3/5] =?UTF-8?q?feat:=20=E5=90=8C=E6=AD=A5=20EntityConfig?= =?UTF-8?q?=20=E6=B7=BB=E5=8A=A0=E7=9A=84=E9=85=8D=E7=BD=AE=E9=A1=B9?= =?UTF-8?q?=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mybatisflex/codegen/config/GlobalConfig.java | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/mybatis-flex-codegen/src/main/java/com/mybatisflex/codegen/config/GlobalConfig.java b/mybatis-flex-codegen/src/main/java/com/mybatisflex/codegen/config/GlobalConfig.java index a5f7669c..b2d94b0d 100644 --- a/mybatis-flex-codegen/src/main/java/com/mybatisflex/codegen/config/GlobalConfig.java +++ b/mybatis-flex-codegen/src/main/java/com/mybatisflex/codegen/config/GlobalConfig.java @@ -877,6 +877,20 @@ public class GlobalConfig { getEntityConfig().setWithLombok(entityWithLombok); } + /** + * @see EntityConfig#getDataSource() + */ + public String getEntityDataSource() { + return getEntityConfig().getDataSource(); + } + + /** + * @see EntityConfig#setDataSource(String) + */ + public void setEntityDataSource(String dataSource) { + getEntityConfig().setDataSource(dataSource); + } + public boolean isMapperGenerateEnable() { return mapperGenerateEnable; } From b72fbfddb64bfb25b0388b31659878108826d8db Mon Sep 17 00:00:00 2001 From: Suomm <1474983351@qq.com> Date: Thu, 13 Jul 2023 19:24:38 +0800 Subject: [PATCH 4/5] =?UTF-8?q?feat:=20=E6=8C=87=E5=AE=9A=E7=94=9F?= =?UTF-8?q?=E6=88=90=E5=AE=9E=E4=BD=93=E7=B1=BB=E7=9A=84=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E6=BA=90=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/mybatisflex/codegen/entity/Table.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/mybatis-flex-codegen/src/main/java/com/mybatisflex/codegen/entity/Table.java b/mybatis-flex-codegen/src/main/java/com/mybatisflex/codegen/entity/Table.java index 818bec46..4ad6fbe1 100644 --- a/mybatis-flex-codegen/src/main/java/com/mybatisflex/codegen/entity/Table.java +++ b/mybatis-flex-codegen/src/main/java/com/mybatisflex/codegen/entity/Table.java @@ -223,6 +223,12 @@ public class Table { tableAnnotation.append(", schema = \"").append(globalSchema).append("\""); } + // 添加 dataSource 配置,因为代码生成器是一个数据源生成的,所以这些实体类应该都是一个数据源。 + String dataSource = globalConfig.getEntityDataSource(); + if (StringUtil.isNotBlank(dataSource)) { + tableAnnotation.append(", dataSource = \"").append(dataSource).append("\""); + } + if (tableConfig != null) { if (StringUtil.isNotBlank(tableConfig.getSchema())) { tableAnnotation.append(", schema = \"").append(tableConfig.getSchema()).append("\""); From b171429c6d879e45616605fd83d097536977ab1e Mon Sep 17 00:00:00 2001 From: Suomm <1474983351@qq.com> Date: Thu, 13 Jul 2023 19:24:59 +0800 Subject: [PATCH 5/5] =?UTF-8?q?test:=20=E6=B5=8B=E8=AF=95=E6=8C=87?= =?UTF-8?q?=E5=AE=9A=E7=94=9F=E6=88=90=E5=AE=9E=E4=BD=93=E7=B1=BB=E7=9A=84?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E6=BA=90=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../codegen/test/GeneratorTest.java | 60 ++++++++++--------- 1 file changed, 31 insertions(+), 29 deletions(-) diff --git a/mybatis-flex-codegen/src/test/java/com/mybatisflex/codegen/test/GeneratorTest.java b/mybatis-flex-codegen/src/test/java/com/mybatisflex/codegen/test/GeneratorTest.java index 193fe612..e6a7244d 100644 --- a/mybatis-flex-codegen/src/test/java/com/mybatisflex/codegen/test/GeneratorTest.java +++ b/mybatis-flex-codegen/src/test/java/com/mybatisflex/codegen/test/GeneratorTest.java @@ -23,6 +23,7 @@ import com.mybatisflex.codegen.config.TableConfig; import com.mybatisflex.codegen.config.TableDefConfig; import com.mybatisflex.spring.service.impl.CacheableServiceImpl; import com.zaxxer.hikari.HikariDataSource; +import org.junit.Test; import java.util.function.UnaryOperator; @@ -100,19 +101,19 @@ public class GeneratorTest { //设置注解生成配置 globalConfig.getJavadocConfig() - .setAuthor("王帅") - .setTableCommentFormat(tableFormat); + .setAuthor("王帅") + .setTableCommentFormat(tableFormat); //设置生成文件目录和根包 globalConfig.getPackageConfig() - .setSourceDir(System.getProperty("user.dir") + "/src/test/java") - .setMapperXmlPath(System.getProperty("user.dir") + "/src/test/java/resources/mapper") - .setBasePackage("com.test"); + .setSourceDir(System.getProperty("user.dir") + "/src/test/java") + .setMapperXmlPath(System.getProperty("user.dir") + "/src/test/java/resources/mapper") + .setBasePackage("com.test"); //设置表前缀和只生成哪些表 globalConfig.getStrategyConfig() - .setTablePrefix("sys_") - .setGenerateTable("sys_user"); + .setTablePrefix("sys_") + .setGenerateTable("sys_user"); //设置模板路径 //globalConfig.getTemplateConfig() @@ -120,9 +121,9 @@ public class GeneratorTest { //配置生成 entity globalConfig.enableEntity() - .setOverwriteEnable(true) - .setWithLombok(true) - .setSupperClass(BaseEntity.class); + .setOverwriteEnable(true) + .setWithLombok(true) + .setSupperClass(BaseEntity.class); //配置生成 mapper globalConfig.enableMapper(); @@ -130,8 +131,8 @@ public class GeneratorTest { globalConfig.enableService(); //配置生成 serviceImpl globalConfig.enableServiceImpl() - .setSupperClass(CacheableServiceImpl.class) - .setCacheExample(true); + .setSupperClass(CacheableServiceImpl.class) + .setCacheExample(true); //配置生成 controller globalConfig.enableController(); //配置生成 tableDef @@ -148,7 +149,7 @@ public class GeneratorTest { generator.generate(); } -// @Test + @Test public void testCodeGen3() { //配置数据源 HikariDataSource dataSource = new HikariDataSource(); @@ -163,14 +164,14 @@ public class GeneratorTest { //设置注解生成配置 globalConfig.getJavadocConfig() - .setAuthor("王帅") - .setTableCommentFormat(tableFormat); + .setAuthor("王帅") + .setTableCommentFormat(tableFormat); //设置生成文件目录和根包 globalConfig.getPackageConfig() - .setSourceDir(System.getProperty("user.dir") + "/src/test/java") - .setMapperXmlPath(System.getProperty("user.dir") + "/src/test/java/resources/mapper") - .setBasePackage("com.test"); + .setSourceDir(System.getProperty("user.dir") + "/src/test/java") + .setMapperXmlPath(System.getProperty("user.dir") + "/src/test/java/resources/mapper") + .setBasePackage("com.test"); ColumnConfig columnConfig = new ColumnConfig(); columnConfig.setColumnName("phonenumber"); @@ -186,26 +187,27 @@ public class GeneratorTest { //设置表前缀和只生成哪些表 globalConfig.getStrategyConfig() - .setTablePrefix("sys_") - .setGenerateTable("sys_user") - .setColumnConfig(logicDelete) - .setTableConfig(tableConfig); + .setTablePrefix("sys_") + .setGenerateTable("sys_user") + .setColumnConfig(logicDelete) + .setTableConfig(tableConfig); //配置生成 tableDef globalConfig.enableTableDef() - .setInstanceSuffix("Def") - .setPropertiesNameStyle(TableDefConfig.NameStyle.LOWER_CAMEL_CASE) - .setOverwriteEnable(true); + .setInstanceSuffix("Def") + .setPropertiesNameStyle(TableDefConfig.NameStyle.LOWER_CAMEL_CASE) + .setOverwriteEnable(true); // 配置生成 entity globalConfig.enableEntity() - .setOverwriteEnable(true) - .setWithLombok(true); + .setOverwriteEnable(true) + .setDataSource("ds1") + .setWithLombok(true); // 配置生成 mapper globalConfig.enableMapper() - .setOverwriteEnable(true) - .setMapperAnnotation(true); + .setOverwriteEnable(true) + .setMapperAnnotation(true); //通过 datasource 和 globalConfig 创建代码生成器 Generator generator = new Generator(dataSource, globalConfig);