From 281f83aced1516664d09e4aec2f0a562532c1284 Mon Sep 17 00:00:00 2001
From: klaokai <573984425@qq.com>
Date: Tue, 10 Sep 2024 10:10:38 +0800
Subject: [PATCH 01/11] =?UTF-8?q?feat=EF=BC=88=E5=A2=9E=E5=8A=A0=E6=8E=92?=
=?UTF-8?q?=E5=BA=8F=EF=BC=89:=20=E5=8D=87=E7=BA=A7=E4=BE=9D=E8=B5=96?=
=?UTF-8?q?=E7=89=88=E6=9C=AC=EF=BC=8C=E5=B9=B6=E5=A2=9E=E5=8A=A0=E6=8E=92?=
=?UTF-8?q?=E5=BA=8F?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
pom.xml | 19 +++++++++++++------
.../MybatisPlusToolsApplication.java | 12 ++++++++++++
.../generatorui/service/DatabaseService.java | 3 +++
3 files changed, 28 insertions(+), 6 deletions(-)
diff --git a/pom.xml b/pom.xml
index f92ea9f..2586517 100644
--- a/pom.xml
+++ b/pom.xml
@@ -35,8 +35,8 @@
1.8
- 2.7.8
- 3.5.3.1
+ 2.7.18
+ 3.5.7
@@ -64,7 +64,7 @@
cn.hutool
hutool-core
- 5.8.12
+ 5.8.19
com.baomidou
@@ -117,6 +117,13 @@
org.springframework.boot
spring-boot-starter-test
test
+
+
+
+ org.junit.vintage
+ junit-vintage-engine
+
+
mysql
@@ -130,7 +137,7 @@
maven-compiler-plugin
- 3.8.1
+ 3.10.0
${java.version}
${java.version}
@@ -158,7 +165,7 @@
org.apache.maven.plugins
maven-javadoc-plugin
- 3.2.0
+ 3.10.0
UTF-8
UTF-8
@@ -177,7 +184,7 @@
org.apache.maven.plugins
maven-source-plugin
- 3.2.1
+ 3.3.1
package
diff --git a/src/main/java/com/github/davidfantasy/mybatisplus/generatorui/MybatisPlusToolsApplication.java b/src/main/java/com/github/davidfantasy/mybatisplus/generatorui/MybatisPlusToolsApplication.java
index 92046a3..c7913b1 100644
--- a/src/main/java/com/github/davidfantasy/mybatisplus/generatorui/MybatisPlusToolsApplication.java
+++ b/src/main/java/com/github/davidfantasy/mybatisplus/generatorui/MybatisPlusToolsApplication.java
@@ -40,7 +40,10 @@ public static void run(GeneratorConfig generatorConfig) {
if (Strings.isNullOrEmpty(generatorConfig.getJdbcUrl())) {
throw new IllegalArgumentException("jdbcUrl必须要设置");
}
+ //本项目的综合配置
MybatisPlusToolsApplication.generatorConfig = generatorConfig;
+
+ //启动MyBatis
Map props = Maps.newHashMap();
new SpringApplicationBuilder()
.properties(props)
@@ -48,6 +51,11 @@ public static void run(GeneratorConfig generatorConfig) {
.run();
}
+ /**
+ * 通过注入一个WebServerFactoryCustomizer来达到修改服务器端口的目的
+ * @param config
+ * @return
+ */
@Bean
public WebServerFactoryCustomizer containerConfig(GeneratorConfig config) {
return factory -> {
@@ -60,6 +68,10 @@ public WebServerFactoryCustomizer container
};
}
+ /**
+ * 注入项目配置
+ * @return 项目配置的对象
+ */
@Bean
public GeneratorConfig generatorConfig() {
return MybatisPlusToolsApplication.generatorConfig;
diff --git a/src/main/java/com/github/davidfantasy/mybatisplus/generatorui/service/DatabaseService.java b/src/main/java/com/github/davidfantasy/mybatisplus/generatorui/service/DatabaseService.java
index 73f5056..d30eb49 100644
--- a/src/main/java/com/github/davidfantasy/mybatisplus/generatorui/service/DatabaseService.java
+++ b/src/main/java/com/github/davidfantasy/mybatisplus/generatorui/service/DatabaseService.java
@@ -10,6 +10,7 @@
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Service;
+import java.util.Comparator;
import java.util.List;
import java.util.Map;
import java.util.Objects;
@@ -28,6 +29,7 @@ public class DatabaseService {
public List getTablesFromDb() {
IDbQuery dbQuery = dbQueryHolder.getDbQuery(dataSourceConfig.getDbType());
+ //利用jdbcTemplate来查询数据库表信息,然后组装信息
List
-
- org.springframework.boot
- spring-boot-starter-web
-
cn.hutool
hutool-core
From 111db0f7c62bed885a6d301efd2d8d70ae93a765 Mon Sep 17 00:00:00 2001
From: klaokai <573984425@qq.com>
Date: Wed, 11 Sep 2024 15:23:43 +0800
Subject: [PATCH 10/11] =?UTF-8?q?chore(=E6=95=B4=E7=90=86=E4=BB=A3?=
=?UTF-8?q?=E7=A0=81)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../generatorui/common/dto/GenSetting.java | 6 ++++++
.../generatorui/common/mbp/MbpGenerator.java | 11 +++--------
.../generatorui/common/service/UserConfigStore.java | 5 +++--
3 files changed, 12 insertions(+), 10 deletions(-)
diff --git a/mybatis-plus-generator-ui-starter-common/src/main/java/com/github/davidfantasy/mybatisplus/generatorui/common/dto/GenSetting.java b/mybatis-plus-generator-ui-starter-common/src/main/java/com/github/davidfantasy/mybatisplus/generatorui/common/dto/GenSetting.java
index 01eaec4..1ce502d 100644
--- a/mybatis-plus-generator-ui-starter-common/src/main/java/com/github/davidfantasy/mybatisplus/generatorui/common/dto/GenSetting.java
+++ b/mybatis-plus-generator-ui-starter-common/src/main/java/com/github/davidfantasy/mybatisplus/generatorui/common/dto/GenSetting.java
@@ -13,6 +13,12 @@ public class GenSetting {
/**
* 需要生成的文件类型
+ * @see Constant.FILE_TYPE_ENTITY
+ * @see Constant.FILE_TYPE_MAPPER
+ * @see Constant.FILE_TYPE_MAPPER_XML
+ * @see Constant.FILE_TYPE_CONTROLLER
+ * @see Constant.FILE_TYPE_SERVICE
+ * @see Constant.FILE_TYPE_SERVICEIMPL
*/
private List choosedOutputFiles;
diff --git a/mybatis-plus-generator-ui-starter-common/src/main/java/com/github/davidfantasy/mybatisplus/generatorui/common/mbp/MbpGenerator.java b/mybatis-plus-generator-ui-starter-common/src/main/java/com/github/davidfantasy/mybatisplus/generatorui/common/mbp/MbpGenerator.java
index cf6b733..5b4912d 100644
--- a/mybatis-plus-generator-ui-starter-common/src/main/java/com/github/davidfantasy/mybatisplus/generatorui/common/mbp/MbpGenerator.java
+++ b/mybatis-plus-generator-ui-starter-common/src/main/java/com/github/davidfantasy/mybatisplus/generatorui/common/mbp/MbpGenerator.java
@@ -29,7 +29,6 @@
import java.io.File;
import java.util.*;
-import java.util.function.Consumer;
@Component
@Slf4j
@@ -77,15 +76,11 @@ public void genCodeBatch(GenSetting genSetting, List tables) {
}).templateEngine(beetlTemplateEngine).packageConfig(builder -> {
configPackage(builder, genSetting.getModuleName(), userConfig);
})
- .strategyConfig(new Consumer() {
- @Override
- public void accept(StrategyConfig.Builder builder) {
- configTemplateNew(builder, genSetting.getChoosedOutputFiles(), userConfig);
- }
- })
.injectionConfig(builder -> {
configInjection(builder, userConfig, genSetting);
}).strategyConfig(builder -> {
+ //设置模版移到这个里面来了
+ configTemplate(builder, genSetting.getChoosedOutputFiles(), userConfig);
builder.addInclude(String.join(",", tables))
.disableSqlFilter()
.enableSkipView();
@@ -118,7 +113,7 @@ private void configPackage(PackageConfig.Builder builder, String moduleName, Use
.pathInfo(Collections.singletonMap(OutputFile.xml, mapperXmlOutputPath));
}
- private void configTemplateNew(StrategyConfig.Builder builder, List choosedFileTypes, UserConfig userConfig) {
+ private void configTemplate(StrategyConfig.Builder builder, List choosedFileTypes, UserConfig userConfig) {
builder.entityBuilder().javaTemplate(findTemplatePath(Constant.FILE_TYPE_ENTITY, userConfig));
builder.mapperBuilder().mapperTemplate(findTemplatePath(Constant.FILE_TYPE_MAPPER, userConfig));
builder.mapperBuilder().mapperXmlTemplate(findTemplatePath(Constant.FILE_TYPE_MAPPER_XML, userConfig));
diff --git a/mybatis-plus-generator-ui-starter-common/src/main/java/com/github/davidfantasy/mybatisplus/generatorui/common/service/UserConfigStore.java b/mybatis-plus-generator-ui-starter-common/src/main/java/com/github/davidfantasy/mybatisplus/generatorui/common/service/UserConfigStore.java
index ab7f8c7..55faad7 100644
--- a/mybatis-plus-generator-ui-starter-common/src/main/java/com/github/davidfantasy/mybatisplus/generatorui/common/service/UserConfigStore.java
+++ b/mybatis-plus-generator-ui-starter-common/src/main/java/com/github/davidfantasy/mybatisplus/generatorui/common/service/UserConfigStore.java
@@ -22,6 +22,7 @@
import java.io.File;
import java.io.IOException;
import java.nio.charset.Charset;
+import java.nio.charset.StandardCharsets;
import java.util.Collections;
import java.util.Date;
import java.util.List;
@@ -66,7 +67,7 @@ public UserConfig getUserConfigFromFile() {
if (!FileUtil.exist(this.userConfigPath)) {
return null;
}
- String userConfigStr = FileUtil.readString(userConfigPath, Charset.forName("utf-8"));
+ String userConfigStr = FileUtil.readString(userConfigPath, StandardCharsets.UTF_8);
try {
return JsonUtil.json2obj(userConfigStr, UserConfig.class);
} catch (Exception e) {
@@ -86,7 +87,7 @@ public void saveUserConfig(UserConfig userConfig) throws IOException {
}
Files.createParentDirs(userConfigFile);
userConfigFile.createNewFile();
- FileUtil.writeFromStream(new ByteArrayInputStream(configStr.getBytes(Charset.forName("utf-8"))), userConfigFile);
+ FileUtil.writeFromStream(new ByteArrayInputStream(configStr.getBytes(StandardCharsets.UTF_8)), userConfigFile);
}
public String uploadTemplate(MultipartFile file) {
From ad280006c656c822c62231920ba627203482e19f Mon Sep 17 00:00:00 2001
From: klaokai <573984425@qq.com>
Date: Wed, 11 Sep 2024 15:55:59 +0800
Subject: [PATCH 11/11] =?UTF-8?q?chore(=E6=95=B4=E7=90=86=E4=BB=A3?=
=?UTF-8?q?=E7=A0=81)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../core/RouterFunctionWebMvcProvider.java | 41 -------------------
.../core/SpringDocWebMvcConfiguration.java | 39 ++++++------------
2 files changed, 12 insertions(+), 68 deletions(-)
delete mode 100644 mybatis-plus-generator-ui-starter-webmvc-api/src/main/java/com/github/davidfantasy/mybatisplus/generatorui/webmvc/api/core/RouterFunctionWebMvcProvider.java
diff --git a/mybatis-plus-generator-ui-starter-webmvc-api/src/main/java/com/github/davidfantasy/mybatisplus/generatorui/webmvc/api/core/RouterFunctionWebMvcProvider.java b/mybatis-plus-generator-ui-starter-webmvc-api/src/main/java/com/github/davidfantasy/mybatisplus/generatorui/webmvc/api/core/RouterFunctionWebMvcProvider.java
deleted file mode 100644
index 871eaf2..0000000
--- a/mybatis-plus-generator-ui-starter-webmvc-api/src/main/java/com/github/davidfantasy/mybatisplus/generatorui/webmvc/api/core/RouterFunctionWebMvcProvider.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
- *
- * *
- * * *
- * * * * Copyright 2019-2022 the original author or authors.
- * * * *
- * * * * Licensed under the Apache License, Version 2.0 (the "License");
- * * * * you may not use this file except in compliance with the License.
- * * * * You may obtain a copy of the License at
- * * * *
- * * * * https://www.apache.org/licenses/LICENSE-2.0
- * * * *
- * * * * Unless required by applicable law or agreed to in writing, software
- * * * * distributed under the License is distributed on an "AS IS" BASIS,
- * * * * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * * * * See the License for the specific language governing permissions and
- * * * * limitations under the License.
- * * *
- * *
- *
- */
-
-package com.github.davidfantasy.mybatisplus.generatorui.webmvc.api.core;
-
-import org.springframework.beans.BeansException;
-import org.springframework.context.ApplicationContext;
-import org.springframework.context.ApplicationContextAware;
-
-public class RouterFunctionWebMvcProvider implements ApplicationContextAware {
-
- /**
- * The Application context.
- */
- private ApplicationContext applicationContext;
-
- @Override
- public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
- this.applicationContext = applicationContext;
- }
-
-}
diff --git a/mybatis-plus-generator-ui-starter-webmvc-api/src/main/java/com/github/davidfantasy/mybatisplus/generatorui/webmvc/api/core/SpringDocWebMvcConfiguration.java b/mybatis-plus-generator-ui-starter-webmvc-api/src/main/java/com/github/davidfantasy/mybatisplus/generatorui/webmvc/api/core/SpringDocWebMvcConfiguration.java
index df5a8e2..861f076 100644
--- a/mybatis-plus-generator-ui-starter-webmvc-api/src/main/java/com/github/davidfantasy/mybatisplus/generatorui/webmvc/api/core/SpringDocWebMvcConfiguration.java
+++ b/mybatis-plus-generator-ui-starter-webmvc-api/src/main/java/com/github/davidfantasy/mybatisplus/generatorui/webmvc/api/core/SpringDocWebMvcConfiguration.java
@@ -1,11 +1,13 @@
package com.github.davidfantasy.mybatisplus.generatorui.webmvc.api.core;
import com.github.davidfantasy.mybatisplus.generatorui.common.core.configuration.MybatisplusGeneratoruiAutoConfiguration;
-import org.springframework.boot.autoconfigure.condition.*;
-import org.springframework.context.annotation.Bean;
+import com.github.davidfantasy.mybatisplus.generatorui.webmvc.api.api.*;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnWebApplication;
import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.Import;
import org.springframework.context.annotation.Lazy;
-import org.springframework.web.servlet.function.RouterFunction;
import static com.github.davidfantasy.mybatisplus.generatorui.common.util.Constants.MYBATISPLUS_GENETATORUI_ENABLED;
@@ -19,29 +21,12 @@
@ConditionalOnWebApplication(type = ConditionalOnWebApplication.Type.SERVLET)
@ConditionalOnProperty(name = MYBATISPLUS_GENETATORUI_ENABLED, matchIfMissing = true)
@ConditionalOnBean(MybatisplusGeneratoruiAutoConfiguration.class)
+@Import({AutoCompleteController.class,
+ DatabaseController.class,
+ MbpGeneratorController.class,
+ OpenApiWebMvcResource.class,
+ OutputFileInfoController.class,
+ SqlGeneratorController.class,
+ TemplateController.class})
public class SpringDocWebMvcConfiguration {
-
- static {
- }
-
- /**
- * The type Spring doc web mvc router configuration.
- *
- * @author bnasslahsen
- */
- @ConditionalOnClass(RouterFunction.class)
- static class SpringDocWebMvcRouterConfiguration {
-
- /**
- * Router function provider router function provider.
- *
- * @return the router function provider
- */
- @Bean
- @ConditionalOnMissingBean
- @Lazy(false)
- RouterFunctionWebMvcProvider routerFunctionProvider() {
- return new RouterFunctionWebMvcProvider();
- }
- }
}