12-12:Servlet

1790884-20191215223314149-1652142039.png
1790884-20191215223417129-805785969.png
1790884-20191215223503952-1734005777.png
1790884-20191215223526647-777360415.png

请分析下面代码:server: port: 8088 tomcat: max-http-form-post-size: -1 servlet: context-path: /wo spring: application: name: wo-system cloud: nacos: discovery: server-addr: 10.105.191.35:8848 namespace: PQS_TEST group: DEFAULT_GROUP datasource: type: com.alibaba.druid.pool.DruidDataSource url: jdbc:p6spy:oracle:thin:@(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 10.105.191.39)(PORT = 1521))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = SJWO))) username: SJWOUSER_T password: SJWOUSERT12345678 driver-class-name: com.p6spy.engine.spy.P6SpyDriver connection-test-query: SELECT * from dual druid: test-on-borrow: false test-while-idle: false initial-size: 2 min-idle: 1 max-active: 10 jackson: date-format: yyyy-MM-dd HH:mm:ss time-zone: GMT+8 # cache: # type: caffeine #上传附件的大小限制 servlet: multipart: max-file-size: 20MB max-request-size: 20MB enabled: true #邮件 thymeleaf: enabled: true cache: false encoding: UTF-8 prefix: classpath:/mail-template/ suffix: .html servlet: content-type: text/html # p6spy sql打印 decorator: datasource: enabled: true # 是否启用 knife4j: enable: false production: false feign: client: config: default: connect-timeout: 5000 read-timeout: 30000 server-name: jyong-server fmcode-name: fmcode global-config: appName: wo-system jyongSysName: wo-system xxl: sso: server: http://10.100.86.13:8087/sso logout: path: /logout excluded: paths: /doc.html/**,/swagger-resources,/v2/api-docs,/webjars/**,/api/**, redis: address: redis://10.100.86.13:6379 job: admin: addresses: http://10.105.191.35:13001/xxl-job-admin executor: address: appname: wo-job ip: logpath: F:\EpmsFile\applogs\xxl-job\jobHandler logretentiondays: 15 port: 14007 accessToken: default_token mybatis-plus: type-aliases-package: com.sjsemi.app.wo.domain mapper-locations: classpath*:/mappers/*.xml wo: dps-push-date: '2024/03/26 12:00:00' mes-wtc: webservice: wsdl-url: http://10.100.86.13:13002/TuxedoConnectionService/services/CommonMsgService req-timeout: 120 # 120s j2-mes: server-id: FABJ2A mail-box: TPSJOHS msgHeader: srvAddr: //10.100.86.13:13002 #cancel_wo_url: http://10.100.86.13:8401/prms/api/cancelSjWoInfoByWoNo cancel_wo_url: http://10.101.60.14:8081/prms/api/cancelSjWoInfoByWoNo
09-26
这段代码是一个典型的 **Spring Boot 配置文件(application.yml)**,用于配置一个基于 Spring Boot + Spring Cloud 的微服务应用。配置内容涵盖了服务器设置、数据源、日志、缓存、Feign、定时任务、MyBatis、第三方服务集成等。下面是对配置的详细分析: --- ## 一、服务器配置(`server`) ```yaml server: port: 8088 tomcat: max-http-form-post-size: -1 servlet: context-path: /wo ``` - **`port: 8088`**:服务运行的端口号为 8088。 - **`max-http-form-post-size: -1`**:设置 Tomcat 的最大表单提交大小为无限制,适用于大文件上传。 - **`context-path: /wo`**:服务的访问路径前缀为 `/wo`,例如访问接口为:`http://localhost:8088/wo/api/xxx`。 --- ## 二、Spring 基础配置 ```yaml spring: application: name: wo-system ``` - **`application.name: wo-system`**:设置当前服务的应用名称,用于注册到服务发现(如 Nacos)中。 --- ## 三、服务注册与发现(Spring Cloud + Nacos) ```yaml cloud: nacos: discovery: server-addr: 10.105.191.35:8848 namespace: PQS_TEST group: DEFAULT_GROUP ``` - **`server-addr`**:Nacos 服务地址,用于服务注册与发现。 - **`namespace`**:命名空间为 `PQS_TEST`,实现多环境隔离。 - **`group`**:组为 `DEFAULT_GROUP`,用于逻辑分组。 --- ## 四、数据源配置(Druid + Oracle + P6Spy) ```yaml datasource: type: com.alibaba.druid.pool.DruidDataSource url: jdbc:p6spy:oracle:thin:@(DESCRIPTION =...) username: SJWOUSER_T password: SJWOUSERT12345678 driver-class-name: com.p6spy.engine.spy.P6SpyDriver connection-test-query: SELECT * from dual druid: test-on-borrow: false test-while-idle: false initial-size: 2 min-idle: 1 max-active: 10 ``` - 使用 **Druid 数据源**,支持连接池管理。 - 使用 **P6Spy 驱动**,用于 SQL 日志打印和监控。 - Oracle 数据库连接信息。 - Druid 配置了连接池参数,如初始连接数、最大连接数等。 --- ## 五、Jackson 日期格式配置 ```yaml jackson: date-format: yyyy-MM-dd HH:mm:ss time-zone: GMT+8 ``` - 设置 JSON 序列化/反序列化时的日期格式为 `yyyy-MM-dd HH:mm:ss`。 - 时区为 `GMT+8`,即北京时间。 --- ## 六、文件上传配置 ```yaml servlet: multipart: max-file-size: 20MB max-request-size: 20MB enabled: true ``` - 支持最大上传文件大小为 20MB,整个请求最大为 20MB。 --- ## 七、Thymeleaf 模板引擎配置 ```yaml thymeleaf: enabled: true cache: false encoding: UTF-8 prefix: classpath:/mail-template/ suffix: .html servlet: content-type: text/html ``` - 启用 Thymeleaf 模板引擎,用于邮件模板渲染。 - 模板文件路径为 `classpath:/mail-template/`,后缀为 `.html`。 --- ## 八、SQL 日志打印配置(P6Spy) ```yaml decorator: datasource: enabled: true ``` - 开启 P6Spy 装饰器,用于打印 SQL 语句及执行时间。 --- ## 九、Knife4j(Swagger)配置 ```yaml knife4j: enable: false production: false ``` - Knife4j(Swagger UI)被禁用,不开启文档接口功能。 --- ## 十、Feign 配置 ```yaml feign: client: config: default: connect-timeout: 5000 read-timeout: 30000 server-name: jyong-server fmcode-name: fmcode ``` - Feign 客户端配置,设置默认连接超时与读取超时。 - `server-name` 和 `fmcode-name` 可能用于服务调用标识。 --- ## 十一、全局自定义配置 ```yaml global-config: appName: wo-system jyongSysName: wo-system ``` - 自定义配置项,可能用于业务逻辑中读取系统名称等信息。 --- ## 十二、XXL-JOB 定时任务配置 ```yaml xxl: sso: server: http://10.100.86.13:8087/sso logout: path: /logout excluded: paths: /doc.html/**,... redis: address: redis://10.100.86.13:6379 job: admin: addresses: http://10.105.191.35:13001/xxl-job-admin executor: appname: wo-job logpath: F:\EpmsFile\applogs\xxl-job\jobHandler logretentiondays: 15 port: 14007 accessToken: default_token ``` - 集成 XXL-JOB 分布式任务调度系统。 - 配置了 SSO 登录地址、排除路径、Redis 地址。 - 配置了 XXL-JOB 的执行器信息(应用名、日志路径、端口等)。 --- ## 十三、MyBatis Plus 配置 ```yaml mybatis-plus: type-aliases-package: com.sjsemi.app.wo.domain mapper-locations: classpath*:/mappers/*.xml ``` - 设置 MyBatis 实体类扫描路径。 - 设置 Mapper XML 文件路径。 --- ## 十四、自定义业务配置 ```yaml wo: dps-push-date: '2024/03/26 12:00:00' mes-wtc: webservice: wsdl-url: http://10.100.86.13:13002/TuxedoConnectionService/services/CommonMsgService req-timeout: 120 # 120s j2-mes: server-id: FABJ2A mail-box: TPSJOHS msgHeader: srvAddr: //10.100.86.13:13002 cancel_wo_url: http://10.101.60.14:8081/prms/api/cancelSjWoInfoByWoNo ``` - 自定义业务配置,如: - `dps-push-date`:数据推送时间。 - `mes-wtc`:调用 MES 系统的 WebService 地址。 - `cancel_wo_url`:取消工单的远程接口地址。 --- ## 总结 该配置文件是一个功能完整的 Spring Boot 微服务配置,涵盖了: - **基础服务配置**(端口、上下文路径) - **数据库连接**(Druid + Oracle + P6Spy) - **服务注册与发现**(Nacos) - **接口文档**(可选的 Knife4j) - **定时任务**(XXL-JOB) - **文件上传、日期格式、模板引擎** - **远程调用**(Feign、WebService) - **自定义业务配置** 适合用于企业级后台服务系统,具备良好的可维护性和可扩展性。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值