Skip to main content

dawdler-boot-web

模块介绍

嵌入式dawdler-web容器的根模块, 提供注解、配置、组件提供者、启动器等功能. 一般开发者不需要使用该模块, 除非有扩展其他容器的需求比如 jetty、tomcat.

1. 配置信息

1、 undertow.yml 目前支持的容器undertow. (未来支持tomcat, jetty 则为tomcat.yml、jetty.yml)


server:
host: 192.168.1.188 #web容器的web地址 默认为空 绑定0.0.0.0
port: 8080 #web容器提供http请求的端口号 默认8080
http2: false #是否支持http2 默认为false
graceful-shutdown: true #是否优雅停机 默认为true
graceful-shutdown-timeout: 30000 # 优雅停机的等待时间 单位为毫秒 默认为30000毫秒

context-path: user-api #web的context-path 默认为空 如果设置为user-api 访问http://localhost:8080/user-api/xxx 如果不设 http://localhost:8080/xxx
deploy-name: user-api # web的deploy-name 默认为空
static-location: static #web的静态资源文件位置 默认不绑定 用于存放 html jsp 图片 js脚本等
component-package-paths: #扫描servlet组件的包路径支持antpath 支持 filter、servlet、listener、ServletContainerInitializer中的@HandlesTypes,支持注入其他组件到全局变量 如 service、mq、redis schedule 等
- com.xxx.listener
- com.xxx.servlet
error-pages: # 错误页面定义 错误状态码 错误页面的文件
500: /500.html
404: /404.html

compression:
enabled: false #是否开启压缩,只有前端代理服务器或游览器支持压缩时才有效,请求头中包含Accept-Encoding: gzip, deflate
mime-types: #默认支持的类型.可不填,需要扩展可以填写
- text/html
- text/xml
- text/plain
- text/css
- text/javascript
- application/javascript
- application/json
- application/xml
min-response-size: 65536 #压缩的阈值,单位为kb 默认为64kb

2、logback.xml 日志配置文件

3、dawdler.cer 公钥证书 可以采用默认的. 如果需要重新制作, 请参考采用keytool制作证书

4、dawdler-config.yml 统一配置中心文件 如果采用统一配置中心则需要此配置 dawdler-config.yml

5、client-conf.xml client-conf.xml配置扫描组件包配置远程加载组件

3. 配置启动服务类


package com.dawdler.user.application;

import com.anywide.dawdler.boot.web.annotation.DawdlerBootApplication;
import com.anywide.dawdler.boot.web.starter.DawdlerWebApplication;

@DawdlerBootApplication
public class UserWebApplication {
public static void main(String[] args) throws Throwable {
DawdlerWebApplication.run(UserWebApplication.class, args);
}
}

4. ide启动参数配置(JPMS jdk17+以上需要)

--add-opens=java.base/java.nio=ALL-UNNAMED --add-opens=java.base/jdk.internal.loader=ALL-UNNAMED --add-opens=java.base/jdk.internal.perf=ALL-UNNAMED --add-opens=java.base/jdk.internal.misc=ALL-UNNAMED  --add-opens=java.xml/com.sun.org.apache.xerces.internal.dom=ALL-UNNAMED

5. 通过dawdler-boot-maven-plugin打包运行方式(JPMS jdk17+以上需要)

java --add-opens=java.base/java.nio=ALL-UNNAMED --add-opens=java.base/jdk.internal.loader=ALL-UNNAMED --add-opens=java.base/jdk.internal.perf=ALL-UNNAMED --add-opens=java.xml/com.sun.org.apache.xerces.internal.dom=ALL-UNNAMED --add-opens=java.base/jdk.internal.misc=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/jdk.internal.perf=dawdler.boot.classloader --add-opens=java.base/jdk.internal.loader=dawdler.boot.classloader --add-opens=java.base/jdk.internal.misc=dawdler.boot.classloader  -p xxx-all.jar -m dawdler.boot.classloader

java --add-opens=java.base/java.nio=ALL-UNNAMED --add-opens=java.base/jdk.internal.loader=ALL-UNNAMED --add-opens=java.base/jdk.internal.perf=ALL-UNNAMED --add-opens=java.base/jdk.internal.misc=ALL-UNNAMED  --add-opens=java.xml/com.sun.org.apache.xerces.internal.dom=ALL-UNNAMED -jar xxx-all.jar