diff --git a/README.md b/README.md
index eddc4d5..f775a60 100644
--- a/README.md
+++ b/README.md
@@ -37,7 +37,8 @@
- 关于`类名注释`,可根据`comment=(mysql)`或者`comment on table(pgsql/oracle)`生成
- 可设置是否`自动引包`(java中的import)及`引入包路径`(java类中的package),建议取消并配合IDEA的自动引包更智能(Settings→Editor→General→Auto Import,勾选Add unambiguous imports on the fly以及Optimize imports on the fly)。
- 可设置`表名前缀`,例如sys_user前缀为sys_之后可以正确生成user类
-- 可切换`header.html`中的include文件为`header-local.html`(本地模式)/`header-CDN.html`(云CDN模式)
+- 可在`applicaltion.yml`中的`OEM.mode`设置`js/css引入模式`为`local`(本地模式,默认)/`CDN`(云CDN模式,在线网站推荐,省流量)
+- OEM信息可以在`applicaltion.yml`中的`OEM`中更改
# Url
@@ -59,6 +60,7 @@ Thanks for `JetBrains` providing us the `Licenses for Open Source Development`
# Update Logs
|更新日期|更新内容|
|:----|:----|
+|2021.01.18|OEM信息优化,支持多配置文件模式,支持在application*.yml自定义信息,以及切换local/cdn模式。|
|2021.01.17|生成后自动trim掉前后空格输出。
完善ReadMe文档。
优化云CDN引入部分。
优化returnUtil部分。
表明前缀选项(感谢@wwlg的建议)。
是否带字段注释设置(感谢@fengpojian的建议)。
优化Mybatis的''!=判断(感谢@zhongsb的建议)。
Mybatis-Plus增加Service层(感谢@yf466532479的建议)。 |
|2021.01.16|全新3.0版本:
一、前端半vue半js化,更多动态加载项。
二、支持更多生成设置,优化生成场景。
三、js导入支持本地/CDN模式,支持断网环境轻松使用。|
|2020.10.22|1.tinyint多加一个Short类型转换(感谢@wttHero的建议)|
diff --git a/generator-web/src/main/java/com/softdev/system/generator/controller/GeneratorController.java b/generator-web/src/main/java/com/softdev/system/generator/controller/GeneratorController.java
index 7d663b8..482462a 100644
--- a/generator-web/src/main/java/com/softdev/system/generator/controller/GeneratorController.java
+++ b/generator-web/src/main/java/com/softdev/system/generator/controller/GeneratorController.java
@@ -7,37 +7,40 @@ import com.softdev.system.generator.entity.ReturnT;
import com.softdev.system.generator.service.GeneratorService;
import com.softdev.system.generator.util.MapUtil;
import com.softdev.system.generator.util.TableParseUtil;
+import com.softdev.system.generator.util.ValueUtil;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
+import org.springframework.web.servlet.ModelAndView;
import java.util.Map;
/**
- * spring boot code generator
- *
- * @author zhengk/moshow
+ * 代码生成控制器
+ * @author zhengkai.blog.csdn.net
*/
@Controller
@Slf4j
public class GeneratorController {
+ @Autowired
+ private ValueUtil valueUtil;
@Autowired
private GeneratorService generatorService;
@GetMapping("/")
- public String defaultPage() {
- return "index";
+ public ModelAndView defaultPage() {
+ return new ModelAndView("index").addObject("value",valueUtil);
}
@GetMapping("/index")
- public String indexPage() {
- return "index";
+ public ModelAndView indexPage() {
+ return new ModelAndView("index").addObject("value",valueUtil);
}
@GetMapping("/main")
- public String mainPage() {
- return "main";
+ public ModelAndView mainPage() {
+ return new ModelAndView("main").addObject("value",valueUtil);
}
@RequestMapping("/template/all")
diff --git a/generator-web/src/main/java/com/softdev/system/generator/util/ValueUtil.java b/generator-web/src/main/java/com/softdev/system/generator/util/ValueUtil.java
new file mode 100644
index 0000000..ced03ef
--- /dev/null
+++ b/generator-web/src/main/java/com/softdev/system/generator/util/ValueUtil.java
@@ -0,0 +1,53 @@
+package com.softdev.system.generator.util;
+
+import lombok.Data;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.stereotype.Component;
+
+/**
+ * Get Value From Application.yml
+ * @author zhengkai.blog.csdn.net
+ */
+@Data
+@Component
+public class ValueUtil {
+ @Value("${OEM.title}")
+ public String title;
+
+ @Value("${OEM.header}")
+ public String header;
+
+ @Value("${OEM.version}")
+ public String version;
+
+ @Value("${OEM.author}")
+ public String author;
+
+ @Value("${OEM.keywords}")
+ public String keywords;
+
+ @Value("${OEM.slogan}")
+ public String slogan;
+
+ @Value("${OEM.copyright}")
+ public String copyright;
+
+ @Value("${OEM.description}")
+ public String description;
+
+ @Value("${OEM.packageName}")
+ public String packageName;
+
+ @Value("${OEM.returnUtilSuccess}")
+ public String returnUtilSuccess;
+
+ @Value("${OEM.returnUtilFailure}")
+ public String returnUtilFailure;
+
+ @Value("${OEM.outputStr}")
+ public String outputStr;
+
+ @Value("${OEM.mode}")
+ public String mode;
+}
+
diff --git a/generator-web/src/main/resources/application-bejson.yml b/generator-web/src/main/resources/application-bejson.yml
new file mode 100644
index 0000000..c308484
--- /dev/null
+++ b/generator-web/src/main/resources/application-bejson.yml
@@ -0,0 +1,62 @@
+server:
+ port: 1234
+ servlet:
+ context-path: /generator
+#tomcat:
+# remote-ip-header: x-forward-for
+# uri-encoding: UTF-8
+# max-threads: 10
+# background-processor-delay: 30
+# basedir: ${user.home}/tomcat/
+ undertow:
+ # 设置IO线程数, 它主要执行非阻塞的任务,它们会负责多个连接, 默认设置每个CPU核心一个线程
+ # 不要设置过大,如果过大,启动项目会报错:打开文件数过多
+ io-threads: 4
+ # 阻塞任务线程池, 当执行类似servlet请求阻塞IO操作, undertow会从这个线程池中取得线程
+ # 它的值设置取决于系统线程执行任务的阻塞系数,默认值是IO线程数*8
+ worker-threads: 64
+ # 以下的配置会影响buffer,这些buffer会用于服务器连接的IO操作,有点类似netty的池化内存管理
+ # 每块buffer的空间大小,越小的空间被利用越充分,不要设置太大,以免影响其他应用,合适即可
+ buffer-size: 1024
+ # 是否分配的直接内存(NIO直接分配的堆外内存)
+ direct-buffers: true
+spring:
+ banner:
+ charset: UTF-8
+ http:
+ encoding:
+ force: true
+ charset: UTF-8
+ application:
+ name: spring-boot-code-generator
+ freemarker:
+ request-context-attribute: request
+ suffix: .html
+ content-type: text/html
+ enabled: true
+ cache: false
+ charset: UTF-8
+ allow-request-override: false
+ expose-request-attributes: true
+ expose-session-attributes: true
+ expose-spring-macro-helpers: true
+ settings:
+ number_format: 0.##
+ default_encoding: UTF-8
+ #template_loader: /templates/
+ #mvc:
+ # static-path-pattern: /statics/**
+OEM:
+ version: 3.1
+ header: SQL转Java JPA、MYBATIS实现类代码生成平台
+ keywords: sql转实体类,sql转DAO,SQL转service,SQL转JPA实现,SQL转MYBATIS实现
+ title: JAVA在线代码生成
+ slogan: For reducing the repetitive CRUD work
+ description: SpringBootCodeGenerator(JAVA代码生成平台),又名`大狼狗代码生成器`、`SQL转JAVA`、`SQL转JPA`、`SQL转Mybatis`、`Mybatis在线生成器`、`SQL转Java JPA、MYBATIS实现类代码生成平台`。
+ author: BEJSON
+ packageName: www.bejson.com
+ copyright: powered by Moshow郑锴(大狼狗)
+ returnUtilSuccess: ReturnT.success
+ returnUtilFailure: ReturnT.error
+ outputStr: www.bejson.com
+ mode: CDN
diff --git a/generator-web/src/main/resources/application-dev.yml b/generator-web/src/main/resources/application-dev.yml
new file mode 100644
index 0000000..b6a96cf
--- /dev/null
+++ b/generator-web/src/main/resources/application-dev.yml
@@ -0,0 +1,62 @@
+server:
+ port: 1234
+ servlet:
+ context-path: /generator
+#tomcat:
+# remote-ip-header: x-forward-for
+# uri-encoding: UTF-8
+# max-threads: 10
+# background-processor-delay: 30
+# basedir: ${user.home}/tomcat/
+ undertow:
+ # 设置IO线程数, 它主要执行非阻塞的任务,它们会负责多个连接, 默认设置每个CPU核心一个线程
+ # 不要设置过大,如果过大,启动项目会报错:打开文件数过多
+ io-threads: 4
+ # 阻塞任务线程池, 当执行类似servlet请求阻塞IO操作, undertow会从这个线程池中取得线程
+ # 它的值设置取决于系统线程执行任务的阻塞系数,默认值是IO线程数*8
+ worker-threads: 64
+ # 以下的配置会影响buffer,这些buffer会用于服务器连接的IO操作,有点类似netty的池化内存管理
+ # 每块buffer的空间大小,越小的空间被利用越充分,不要设置太大,以免影响其他应用,合适即可
+ buffer-size: 1024
+ # 是否分配的直接内存(NIO直接分配的堆外内存)
+ direct-buffers: true
+spring:
+ banner:
+ charset: UTF-8
+ http:
+ encoding:
+ force: true
+ charset: UTF-8
+ application:
+ name: spring-boot-code-generator
+ freemarker:
+ request-context-attribute: request
+ suffix: .html
+ content-type: text/html
+ enabled: true
+ cache: false
+ charset: UTF-8
+ allow-request-override: false
+ expose-request-attributes: true
+ expose-session-attributes: true
+ expose-spring-macro-helpers: true
+ settings:
+ number_format: 0.##
+ default_encoding: UTF-8
+ #template_loader: /templates/
+ #mvc:
+ # static-path-pattern: /statics/**
+OEM:
+ version: 3.1
+ header: SQL转Java JPA、MYBATIS实现类代码生成平台
+ keywords: sql转实体类,sql转DAO,SQL转service,SQL转JPA实现,SQL转MYBATIS实现
+ title: JAVA代码生成平台
+ slogan: For reducing the repetitive CRUD work
+ description: SpringBootCodeGenerator(JAVA代码生成平台),又名`大狼狗代码生成器`、`SQL转JAVA`、`SQL转JPA`、`SQL转Mybatis`、`Mybatis在线生成器`、`SQL转Java JPA、MYBATIS实现类代码生成平台`。
+ author: zhengkai.blog.csdn.net
+ packageName: com.software.system
+ copyright: powered by Moshow郑锴(大狼狗)
+ returnUtilSuccess: ReturnT.success
+ returnUtilFailure: ReturnT.error
+ outputStr: zhengkai.blog.csdn.net
+ mode: local
diff --git a/generator-web/src/main/resources/application-devtools.yml b/generator-web/src/main/resources/application-devtools.yml
new file mode 100644
index 0000000..4c6ee4a
--- /dev/null
+++ b/generator-web/src/main/resources/application-devtools.yml
@@ -0,0 +1,62 @@
+server:
+ port: 1234
+ servlet:
+ context-path: /generator
+#tomcat:
+# remote-ip-header: x-forward-for
+# uri-encoding: UTF-8
+# max-threads: 10
+# background-processor-delay: 30
+# basedir: ${user.home}/tomcat/
+ undertow:
+ # 设置IO线程数, 它主要执行非阻塞的任务,它们会负责多个连接, 默认设置每个CPU核心一个线程
+ # 不要设置过大,如果过大,启动项目会报错:打开文件数过多
+ io-threads: 4
+ # 阻塞任务线程池, 当执行类似servlet请求阻塞IO操作, undertow会从这个线程池中取得线程
+ # 它的值设置取决于系统线程执行任务的阻塞系数,默认值是IO线程数*8
+ worker-threads: 64
+ # 以下的配置会影响buffer,这些buffer会用于服务器连接的IO操作,有点类似netty的池化内存管理
+ # 每块buffer的空间大小,越小的空间被利用越充分,不要设置太大,以免影响其他应用,合适即可
+ buffer-size: 1024
+ # 是否分配的直接内存(NIO直接分配的堆外内存)
+ direct-buffers: true
+spring:
+ banner:
+ charset: UTF-8
+ http:
+ encoding:
+ force: true
+ charset: UTF-8
+ application:
+ name: spring-boot-code-generator
+ freemarker:
+ request-context-attribute: request
+ suffix: .html
+ content-type: text/html
+ enabled: true
+ cache: false
+ charset: UTF-8
+ allow-request-override: false
+ expose-request-attributes: true
+ expose-session-attributes: true
+ expose-spring-macro-helpers: true
+ settings:
+ number_format: 0.##
+ default_encoding: UTF-8
+ #template_loader: /templates/
+ #mvc:
+ # static-path-pattern: /statics/**
+OEM:
+ version: 3.1
+ header: SQL转Java JPA、MYBATIS实现类代码生成平台
+ keywords: sql转实体类,sql转DAO,SQL转service,SQL转JPA实现,SQL转MYBATIS实现
+ title: JAVA在线代码生成
+ slogan: For reducing the repetitive CRUD work
+ description: SpringBootCodeGenerator(JAVA代码生成平台),又名`大狼狗代码生成器`、`SQL转JAVA`、`SQL转JPA`、`SQL转Mybatis`、`Mybatis在线生成器`、`SQL转Java JPA、MYBATIS实现类代码生成平台`。
+ author: devtools.cn
+ packageName: www.devtools.cn
+ copyright: powered by Moshow郑锴(大狼狗)
+ returnUtilSuccess: ReturnT.success
+ returnUtilFailure: ReturnT.error
+ outputStr: devtools.cn
+ mode: CDN
diff --git a/generator-web/src/main/resources/application.yml b/generator-web/src/main/resources/application.yml
index 049e4a2..caf4dfc 100644
--- a/generator-web/src/main/resources/application.yml
+++ b/generator-web/src/main/resources/application.yml
@@ -1,48 +1,3 @@
-server:
- port: 1234
- servlet:
- context-path: /generator
-#tomcat:
-# remote-ip-header: x-forward-for
-# uri-encoding: UTF-8
-# max-threads: 10
-# background-processor-delay: 30
-# basedir: ${user.home}/tomcat/
- undertow:
- # 设置IO线程数, 它主要执行非阻塞的任务,它们会负责多个连接, 默认设置每个CPU核心一个线程
- # 不要设置过大,如果过大,启动项目会报错:打开文件数过多
- io-threads: 4
- # 阻塞任务线程池, 当执行类似servlet请求阻塞IO操作, undertow会从这个线程池中取得线程
- # 它的值设置取决于系统线程执行任务的阻塞系数,默认值是IO线程数*8
- worker-threads: 64
- # 以下的配置会影响buffer,这些buffer会用于服务器连接的IO操作,有点类似netty的池化内存管理
- # 每块buffer的空间大小,越小的空间被利用越充分,不要设置太大,以免影响其他应用,合适即可
- buffer-size: 1024
- # 是否分配的直接内存(NIO直接分配的堆外内存)
- direct-buffers: true
spring:
- banner:
- charset: UTF-8
- http:
- encoding:
- force: true
- charset: UTF-8
- application:
- name: spring-boot-code-generator
- freemarker:
- request-context-attribute: request
- suffix: .html
- content-type: text/html
- enabled: true
- cache: false
- charset: UTF-8
- allow-request-override: false
- expose-request-attributes: true
- expose-session-attributes: true
- expose-spring-macro-helpers: true
- settings:
- number_format: 0.##
- default_encoding: UTF-8
- #template_loader: /templates/
- #mvc:
- # static-path-pattern: /statics/**
\ No newline at end of file
+ profiles:
+ active: dev
\ No newline at end of file
diff --git a/generator-web/src/main/resources/statics/js/main.js b/generator-web/src/main/resources/statics/js/main.js
index 27528a0..bd0d6af 100644
--- a/generator-web/src/main/resources/statics/js/main.js
+++ b/generator-web/src/main/resources/statics/js/main.js
@@ -41,10 +41,10 @@ const vm = new Vue({
options: {
dataType: "sql",
- authorName: "zhengkai.blog.csdn.net",
- packageName: "cn.devtools",
- returnUtilSuccess: "Return.SUCCESS",
- returnUtilFailure: "Return.ERROR",
+ authorName: "${(value.author)!!}",
+ packageName: "${(value.packageName)!!}",
+ returnUtilSuccess: "${(value.returnUtilSuccess)!!}",
+ returnUtilFailure: "${(value.returnUtilFailure)!!}",
isPackageType: true,
isSwagger: false,
@@ -61,7 +61,7 @@ const vm = new Vue({
},
templates:[{}],
historicalData:[],
- outputStr: "xxx",
+ outputStr: "${(value.outputStr)!!}",
outputJson: {}
},
methods: {
diff --git a/generator-web/src/main/resources/templates/header-CDN.html b/generator-web/src/main/resources/templates/header-CDN.html
index 7877116..3cb7795 100644
--- a/generator-web/src/main/resources/templates/header-CDN.html
+++ b/generator-web/src/main/resources/templates/header-CDN.html
@@ -1,9 +1,3 @@
-
-
-
-