diff --git a/jeecg-boot-base-core/pom.xml b/jeecg-boot-base-core/pom.xml index 6800fd7cf..95bfe75b7 100644 --- a/jeecg-boot-base-core/pom.xml +++ b/jeecg-boot-base-core/pom.xml @@ -53,6 +53,16 @@ org.springframework.boot spring-boot-starter-web + + + org.springframework.boot + spring-boot-starter-tomcat + + + + + org.springframework.boot + spring-boot-starter-undertow diff --git a/jeecg-boot-base-core/src/main/java/org/jeecg/common/util/oConvertUtils.java b/jeecg-boot-base-core/src/main/java/org/jeecg/common/util/oConvertUtils.java index 6366ee2de..ba2e071d0 100644 --- a/jeecg-boot-base-core/src/main/java/org/jeecg/common/util/oConvertUtils.java +++ b/jeecg-boot-base-core/src/main/java/org/jeecg/common/util/oConvertUtils.java @@ -413,7 +413,7 @@ public class oConvertUtils { return false; } - String[] childs = childArray.toArray(new String[]{}); + String[] childs = (String[]) childArray.toArray(); for (String v : childs) { if (!isIn(v, all)) { return false; diff --git a/jeecg-boot-base-core/src/main/java/org/jeecg/config/Swagger3Config.java b/jeecg-boot-base-core/src/main/java/org/jeecg/config/Swagger3Config.java index 1ab523f41..0c59779fb 100644 --- a/jeecg-boot-base-core/src/main/java/org/jeecg/config/Swagger3Config.java +++ b/jeecg-boot-base-core/src/main/java/org/jeecg/config/Swagger3Config.java @@ -15,10 +15,6 @@ import org.springframework.context.annotation.Configuration; import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry; import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; -/** - * @author kezhijie@wuhandsj.com - * @date 2023/11/2 14:19 - */ @Configuration public class Swagger3Config implements WebMvcConfigurer { /** diff --git a/jeecg-boot-base-core/src/main/java/org/jeecg/config/UndertowCustomizer.java b/jeecg-boot-base-core/src/main/java/org/jeecg/config/UndertowCustomizer.java new file mode 100644 index 000000000..afc484b98 --- /dev/null +++ b/jeecg-boot-base-core/src/main/java/org/jeecg/config/UndertowCustomizer.java @@ -0,0 +1,19 @@ +package org.jeecg.config; + +import io.undertow.server.DefaultByteBufferPool; +import io.undertow.websockets.jsr.WebSocketDeploymentInfo; +import org.springframework.boot.web.embedded.undertow.UndertowServletWebServerFactory; +import org.springframework.boot.web.server.WebServerFactoryCustomizer; +import org.springframework.stereotype.Component; + +@Component +public class UndertowCustomizer implements WebServerFactoryCustomizer { + @Override + public void customize(UndertowServletWebServerFactory factory) { + factory.addDeploymentInfoCustomizers(deploymentInfo -> { + WebSocketDeploymentInfo webSocketDeploymentInfo = new WebSocketDeploymentInfo(); + webSocketDeploymentInfo.setBuffers(new DefaultByteBufferPool(false, 1024)); + deploymentInfo.addServletContextAttribute("io.undertow.websockets.jsr.WebSocketDeploymentInfo", webSocketDeploymentInfo); + }); + } +} diff --git a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/config/init/TomcatFactoryConfig.java b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/config/init/TomcatFactoryConfig.java index ac4d2a5b4..4406122d0 100644 --- a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/config/init/TomcatFactoryConfig.java +++ b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/config/init/TomcatFactoryConfig.java @@ -1,33 +1,33 @@ -package org.jeecg.config.init; - -import org.apache.catalina.Context; -import org.apache.tomcat.util.scan.StandardJarScanner; -import org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory; -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; - -/** - * @Description: TomcatFactoryConfig - * @author: scott - * @date: 2021年01月25日 11:40 - */ -@Configuration -public class TomcatFactoryConfig { - /** - * tomcat-embed-jasper引用后提示jar找不到的问题 - */ - @Bean - public TomcatServletWebServerFactory tomcatFactory() { - TomcatServletWebServerFactory factory = new TomcatServletWebServerFactory() { - @Override - protected void postProcessContext(Context context) { - ((StandardJarScanner) context.getJarScanner()).setScanManifest(false); - } - }; - factory.addConnectorCustomizers(connector -> { - connector.setProperty("relaxedPathChars", "[]{}"); - connector.setProperty("relaxedQueryChars", "[]{}"); - }); - return factory; - } -} +//package org.jeecg.config.init; +// +//import org.apache.catalina.Context; +//import org.apache.tomcat.util.scan.StandardJarScanner; +//import org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory; +//import org.springframework.context.annotation.Bean; +//import org.springframework.context.annotation.Configuration; +// +///** +// * @Description: TomcatFactoryConfig +// * @author: scott +// * @date: 2021年01月25日 11:40 +// */ +//@Configuration +//public class TomcatFactoryConfig { +// /** +// * tomcat-embed-jasper引用后提示jar找不到的问题 +// */ +// @Bean +// public TomcatServletWebServerFactory tomcatFactory() { +// TomcatServletWebServerFactory factory = new TomcatServletWebServerFactory() { +// @Override +// protected void postProcessContext(Context context) { +// ((StandardJarScanner) context.getJarScanner()).setScanManifest(false); +// } +// }; +// factory.addConnectorCustomizers(connector -> { +// connector.setProperty("relaxedPathChars", "[]{}"); +// connector.setProperty("relaxedQueryChars", "[]{}"); +// }); +// return factory; +// } +//} diff --git a/jeecg-module-system/jeecg-system-start/src/main/resources/application-dev.yml b/jeecg-module-system/jeecg-system-start/src/main/resources/application-dev.yml index f2c2746c4..52902e455 100644 --- a/jeecg-module-system/jeecg-system-start/src/main/resources/application-dev.yml +++ b/jeecg-module-system/jeecg-system-start/src/main/resources/application-dev.yml @@ -1,7 +1,12 @@ server: port: 8080 - tomcat: - max-swallow-size: -1 + undertow: + # 平替 tomcat server.tomcat.max-swallow-siz, undertow该值默认为-1 + # max-http-post-size: 10MB + worker-threads: 16 # 4核CPU标准配置 + buffers: + websocket: 8192 # WebSocket缓冲 以字节为单位,这里设置为8 KB + io: 16384 # IO操作缓冲 以字节为单位,这里设置为16 KB error: include-exception: true include-stacktrace: ALWAYS diff --git a/jeecg-module-system/jeecg-system-start/src/main/resources/application-prod.yml b/jeecg-module-system/jeecg-system-start/src/main/resources/application-prod.yml index 092e517a0..ea078924b 100644 --- a/jeecg-module-system/jeecg-system-start/src/main/resources/application-prod.yml +++ b/jeecg-module-system/jeecg-system-start/src/main/resources/application-prod.yml @@ -1,7 +1,12 @@ server: port: 8080 - tomcat: - max-swallow-size: -1 + undertow: + # 平替 tomcat server.tomcat.max-swallow-siz, undertow该值默认为-1 + # max-http-post-size: 10MB + worker-threads: 16 # 4核CPU标准配置 + buffers: + websocket: 8192 # WebSocket缓冲 以字节为单位,这里设置为8 KB + io: 16384 # IO操作缓冲 以字节为单位,这里设置为16 KB error: include-exception: true include-stacktrace: ALWAYS diff --git a/jeecg-module-system/jeecg-system-start/src/main/resources/application-test.yml b/jeecg-module-system/jeecg-system-start/src/main/resources/application-test.yml index 2264061ae..5233441b1 100644 --- a/jeecg-module-system/jeecg-system-start/src/main/resources/application-test.yml +++ b/jeecg-module-system/jeecg-system-start/src/main/resources/application-test.yml @@ -1,7 +1,12 @@ server: port: 8080 - tomcat: - max-swallow-size: -1 + undertow: + # 平替 tomcat server.tomcat.max-swallow-siz, undertow该值默认为-1 + # max-http-post-size: 10MB + worker-threads: 16 # 4核CPU标准配置 + buffers: + websocket: 8192 # WebSocket缓冲 以字节为单位,这里设置为8 KB + io: 16384 # IO操作缓冲 以字节为单位,这里设置为16 KB error: include-exception: true include-stacktrace: ALWAYS diff --git a/pom.xml b/pom.xml index ee25fe335..95cbd5303 100644 --- a/pom.xml +++ b/pom.xml @@ -38,7 +38,7 @@ 2.0.4 2.2.0 - 1.2.83 + 2.0.43 1.6.0 4.3.0 2.0.9