364 lines
16 KiB
YAML
364 lines
16 KiB
YAML
spring:
|
||
application:
|
||
name: system-server
|
||
|
||
profiles:
|
||
active: smart_canteen_test
|
||
# active: prod #生产
|
||
|
||
server:
|
||
port: 48081
|
||
|
||
# 日志文件配置。注意,如果 logging.file.name 不放在 bootstrap.yaml 配置文件,而是放在 application.yaml 中,会导致出现 LOG_FILE_IS_UNDEFINED 文件
|
||
logging:
|
||
file:
|
||
name: ${user.home}/logs/${spring.application.name}.log # 日志文件名,全路径
|
||
|
||
|
||
--- #################### 注册中心相关配置 ####################
|
||
|
||
spring:
|
||
cloud:
|
||
nacos:
|
||
username: nacos
|
||
password: bonus@Admin123
|
||
server-addr: 192.168.0.244:8848
|
||
discovery:
|
||
namespace: smart_canteen # 命名空间。这里使用 dev 开发环境
|
||
metadata:
|
||
version: 1.0.0 # 服务实例的版本号,可用于灰度发布
|
||
|
||
--- #################### 配置中心相关配置 ####################
|
||
|
||
spring:
|
||
cloud:
|
||
nacos:
|
||
# Nacos Config 配置项,对应 NacosConfigProperties 配置属性类
|
||
config:
|
||
server-addr: 192.168.0.244:8848 # Nacos 服务器地址
|
||
namespace: smart_canteen # 命名空间 dev 的ID,不能直接使用 dev 名称。创建命名空间的时候需要指定ID为 dev,这里使用 dev 开发环境
|
||
group: DEFAULT_GROUP # 使用的 Nacos 配置分组,默认为 DEFAULT_GROUP
|
||
name: ${spring.application.name} # 使用的 Nacos 配置集的 dataId,默认为 spring.application.name
|
||
file-extension: yaml # 使用的 Nacos 配置集的 dataId 的文件拓展名,同时也是 Nacos 配置集的配置格式,默认为 properties
|
||
|
||
|
||
spring:
|
||
main:
|
||
allow-circular-references: true # 允许循环依赖,因为项目是三层架构,无法避免这个情况。
|
||
allow-bean-definition-overriding: true # 允许 Bean 覆盖,例如说 Feign 等会存在重复定义的服务
|
||
|
||
# Servlet 配置
|
||
servlet:
|
||
# 文件上传相关配置项
|
||
multipart:
|
||
max-file-size: 16MB # 单个文件大小
|
||
max-request-size: 32MB # 设置总上传的文件大小
|
||
mvc:
|
||
pathmatch:
|
||
matching-strategy: ANT_PATH_MATCHER # 解决 SpringFox 与 SpringBoot 2.6.x 不兼容的问题,参见 SpringFoxHandlerProviderBeanPostProcessor 类
|
||
|
||
# Jackson 配置项
|
||
jackson:
|
||
serialization:
|
||
write-dates-as-timestamps: true # 设置 LocalDateTime 的格式,使用时间戳
|
||
write-date-timestamps-as-nanoseconds: false # 设置不使用 nanoseconds 的格式。例如说 1611460870.401,而是直接 1611460870401
|
||
write-durations-as-timestamps: true # 设置 Duration 的格式,使用时间戳
|
||
fail-on-empty-beans: false # 允许序列化无属性的 Bean
|
||
|
||
# Cache 配置项
|
||
cache:
|
||
type: REDIS
|
||
redis:
|
||
time-to-live: 1h # 设置过期时间为 1 小时
|
||
|
||
--- #################### 接口文档配置 ####################
|
||
|
||
springdoc:
|
||
api-docs:
|
||
enabled: true # 1. 是否开启 Swagger 接文档的元数据
|
||
path: /v3/api-docs
|
||
swagger-ui:
|
||
enabled: false # 2.1 是否开启 Swagger 文档的官方 UI 界面
|
||
path: /swagger-ui.html
|
||
default-flat-param-object: true # 参见 https://doc.xiaominfo.com/docs/faq/v4/knife4j-parameterobject-flat-param 文档
|
||
|
||
knife4j:
|
||
enable: true # 2.2 是否开启 Swagger 文档的 Knife4j UI 界面
|
||
setting:
|
||
language: zh_cn
|
||
|
||
# MyBatis Plus 的配置项
|
||
mybatis-plus:
|
||
configuration:
|
||
map-underscore-to-camel-case: true # 虽然默认为 true ,但是还是显示去指定下。
|
||
global-config:
|
||
db-config:
|
||
id-type: NONE # “智能”模式,基于 IdTypeEnvironmentPostProcessor + 数据源的类型,自动适配成 AUTO、INPUT 模式。
|
||
# id-type: AUTO # 自增 ID,适合 MySQL 等直接自增的数据库
|
||
# id-type: INPUT # 用户输入 ID,适合 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库
|
||
# id-type: ASSIGN_ID # 分配 ID,默认使用雪花算法。注意,Oracle、PostgreSQL、Kingbase、DB2、H2 数据库时,需要去除实体类上的 @KeySequence 注解
|
||
logic-delete-value: 1 # 逻辑已删除值(默认为 1)
|
||
logic-not-delete-value: 0 # 逻辑未删除值(默认为 0)
|
||
banner: false # 关闭控制台的 Banner 打印
|
||
mybatis-plus-join:
|
||
banner: false # 关闭控制台的 Banner 打印
|
||
|
||
# Spring Data Redis 配置
|
||
spring:
|
||
data:
|
||
redis:
|
||
repositories:
|
||
enabled: false # 项目未使用到 Spring Data Redis 的 Repository,所以直接禁用,保证启动速度
|
||
|
||
|
||
--- #################### 定时任务相关配置 ####################
|
||
|
||
xxl:
|
||
job:
|
||
executor:
|
||
appname: ${spring.application.name} # 执行器 AppName
|
||
logpath: ${user.home}/logs/xxl-job/${spring.application.name} # 执行器运行日志文件存储磁盘路径
|
||
accessToken: default_token # 执行器通讯TOKEN
|
||
|
||
|
||
--- #################### jysoft相关配置 ####################
|
||
|
||
jysoft:
|
||
info:
|
||
version: 1.0.0
|
||
base-package: com.jysoft.module.system
|
||
web:
|
||
admin-ui:
|
||
url: http://dashboard.jysoft.com # Admin 管理后台 UI 的地址
|
||
swagger:
|
||
title: 管理后台
|
||
description: 提供管理员管理的所有功能
|
||
version: ${jysoft.info.version}
|
||
base-package: ${jysoft.info.base-package}
|
||
tenant: # 多租户相关配置项
|
||
enable: true
|
||
ignore-urls:
|
||
- /admin-api/system/tenant/get-id-by-name # 基于名字获取租户,不许带租户编号
|
||
- /admin-api/system/captcha/get-image # 获取图片验证码,和租户无关
|
||
- /admin-api/system/captcha/get # 获取图片验证码,和租户无关
|
||
- /admin-api/system/captcha/check # 校验图片验证码,和租户无关
|
||
- /admin-api/system/sms/callback/* # 短信回调接口,无法带上租户编号
|
||
- /admin-api/system/auth/login # 账密登录,不需要租户编号
|
||
- /admin-api/system/auth/getAppUserPermissionInfo
|
||
- /rpc-api/system/tenant/valid # 防止递归。避免调用 /rpc-api/system/tenant/valid 接口时,又去触发 /rpc-api/system/tenant/valid 去校验
|
||
- /rpc-api/system/user/get
|
||
- /rpc-api/system/dict/*
|
||
- /rpc-api/system/tenant/id-list # 获得租户列表的时候,无需传递租户编号
|
||
- /rpc-api/system/error-code/* # 错误码的自动创建与下载的接口,无法带上租户编号
|
||
- /rpc-api/system/oauth2/token/check # 访问令牌校验时,无需传递租户编号;主要解决上传文件的场景,前端不会传递 tenant-id!
|
||
- /admin-api/system/file/** # 访问文件时,无需传递租户编号;主要解决上传文件的场景,前端不会传递 tenant-id!
|
||
- /app-api/system/app/file/** # 访问文件时,无需传递租户编号;主要解决上传文件的场景,前端不会传递 tenant-id!
|
||
- /admin-api/system/isc/** # 访问ISC时,无需传递租户编号;
|
||
- /upload/** # 访问文件时,无需传递租户编号;主要解决上传文件的场景,前端不会传递 tenant-id!
|
||
- /admin-api/system/appLogin/stat/exportByExcelLog
|
||
- /admin-api/system/dept/stat/exportByExcelFb
|
||
- /admin-api/system/module/stat/exportModuleExcel
|
||
|
||
ignore-tables:
|
||
- system_tenant
|
||
- system_tenant_package
|
||
- system_dict_data
|
||
- system_dict_type
|
||
- system_error_code
|
||
- system_menu
|
||
- system_sms_channel
|
||
- system_sms_template
|
||
- system_sms_log
|
||
- system_sensitive_word
|
||
- system_oauth2_client
|
||
- system_mail_account
|
||
- system_mail_template
|
||
- system_mail_log
|
||
- system_notify_template
|
||
- system_file
|
||
- system_file_config
|
||
- system_file_content
|
||
- app_menu
|
||
- app_role
|
||
- app_role_menu
|
||
- app_user_role
|
||
- green_dictionary_info
|
||
- system_role
|
||
- system_role_menu
|
||
- system_menu
|
||
- system_user_role
|
||
- green_calendar
|
||
- green_day
|
||
|
||
debug: false
|
||
niu:
|
||
niupayurl: https://dev06.xnzn.net/tengyun-api/leopen/pay/device #测试地址食堂支付
|
||
niusearchuserurl: https://dev06.xnzn.net/tengyun-api/leopen/customer/query #测试地址查询用户
|
||
niupayreturnurl: https://dev06.xnzn.net/tengyun-api/leopen/pay/refund #测试地址食堂支付退钱
|
||
applicationid: 104027978266054656
|
||
applicationidpsw: 082d5733fc44443e992071b2bc916620
|
||
sncode: 001
|
||
serialnum: 02022840
|
||
|
||
#
|
||
#niu:
|
||
# niupayurl: http://10.138.55.106:58100/tengyun-api/leopen/pay/device #测试地址食堂支付
|
||
# niusearchuserurl: http://10.138.55.106:58100/tengyun-api/leopen/customer/query #测试地址查询用户
|
||
# niupayreturnurl: http://10.138.55.106:58100/tengyun-api/leopen/pay/refund #测试地址食堂支付退钱
|
||
# applicationid: 396571655104630784
|
||
# applicationidpsw: ee75c51b4a854c43ad9a85560f024068
|
||
# sncode: 2ad34554g2 #虚拟支付设备
|
||
# serialnum: 02022840
|
||
|
||
|
||
|
||
--- #################### 数据库相关配置 ####################
|
||
spring:
|
||
# 数据源配置项
|
||
autoconfigure:
|
||
exclude:
|
||
- com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceAutoConfigure # 排除 Druid 的自动配置,使用 dynamic-datasource-spring-boot-starter 配置多数据源
|
||
- de.codecentric.boot.admin.client.config.SpringBootAdminClientAutoConfiguration # 禁用 Spring Boot Admin 的 Client 的自动配置
|
||
datasource:
|
||
druid: # Druid 【监控】相关的全局配置
|
||
web-stat-filter:
|
||
enabled: true
|
||
stat-view-servlet:
|
||
enabled: true
|
||
allow: # 设置白名单,不填则允许所有访问
|
||
url-pattern: /druid/*
|
||
login-username: # 控制台管理用户名和密码
|
||
login-password:
|
||
filter:
|
||
stat:
|
||
enabled: true
|
||
log-slow-sql: true # 慢 SQL 记录
|
||
slow-sql-millis: 100
|
||
merge-sql: true
|
||
wall:
|
||
config:
|
||
multi-statement-allow: true
|
||
dynamic: # 多数据源配置
|
||
druid: # Druid 【连接池】相关的全局配置
|
||
initial-size: 1 # 初始连接数
|
||
min-idle: 1 # 最小连接池数量
|
||
max-active: 20 # 最大连接池数量
|
||
max-wait: 600000 # 配置获取连接等待超时的时间,单位:毫秒
|
||
time-between-eviction-runs-millis: 60000 # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位:毫秒
|
||
min-evictable-idle-time-millis: 300000 # 配置一个连接在池中最小生存的时间,单位:毫秒
|
||
max-evictable-idle-time-millis: 900000 # 配置一个连接在池中最大生存的时间,单位:毫秒
|
||
validation-query: SELECT 1 FROM DUAL # 配置检测连接是否有效
|
||
test-while-idle: true
|
||
test-on-borrow: false
|
||
test-on-return: false
|
||
primary: master
|
||
datasource:
|
||
master:
|
||
name: sbd-zhhq
|
||
url: jdbc:mysql://127.0.0.1:3306/${spring.datasource.dynamic.datasource.master.name}?allowMultiQueries=true&useUnicode=true&useSSL=false&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&autoReconnect=true&nullCatalogMeansCurrent=true # MySQL Connector/J 8.X 连接的示例
|
||
#url: jdbc:mysql://localhost:3306/${spring.datasource.dynamic.datasource.master.name}?useSSL=false&allowPublicKeyRetrieval=true&useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai # MySQL Connector/J 5.X 连接的示例
|
||
# url: jdbc:mysql://10.138.55.104:13306/${spring.datasource.dynamic.datasource.master.name}?useSSL=false&allowPublicKeyRetrieval=true&useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai # MySQL Connector/J 5.X 连接的示例
|
||
# url: jdbc:mysql://220.248.250.227:49961/${spring.datasource.dynamic.datasource.master.name}?useSSL=false&allowPublicKeyRetrieval=true&useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai # MySQL Connector/J 5.X 连接的示例
|
||
# url: jdbc:postgresql://127.0.0.1:5432/${spring.datasource.dynamic.datasource.master.name} # PostgreSQL 连接的示例
|
||
# url: jdbc:oracle:thin:@127.0.0.1:1521:xe # Oracle 连接的示例
|
||
# url: jdbc:sqlserver://127.0.0.1:1433;DatabaseName=${spring.datasource.dynamic.datasource.master.name} # SQLServer 连接的示例
|
||
username: root
|
||
password: root
|
||
# password: Jysoft@#2023
|
||
#password: zhh75577
|
||
# password: jysoft@sbd1
|
||
# username: sa
|
||
# password: JSm:g(*%lU4ZAkz06cd52KqT3)i1?H7W
|
||
# slave: # 模拟从库,可根据自己需要修改
|
||
# name: roof-vue-pro
|
||
# url: jdbc:mysql://127.0.0.1:3306/${spring.datasource.dynamic.datasource.slave.name}?allowMultiQueries=true&useUnicode=true&useSSL=false&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&autoReconnect=true&nullCatalogMeansCurrent=true # MySQL Connector/J 8.X 连接的示例
|
||
# url: jdbc:mysql://127.0.0.1:3306/${spring.datasource.dynamic.datasource.slave.name}?useSSL=false&allowPublicKeyRetrieval=true&useUnicode=true&characterEncoding=UTF-8&serverTimezone=CTT # MySQL Connector/J 5.X 连接的示例
|
||
# url: jdbc:postgresql://127.0.0.1:5432/${spring.datasource.dynamic.datasource.slave.name} # PostgreSQL 连接的示例
|
||
# url: jdbc:oracle:thin:@127.0.0.1:1521:xe # Oracle 连接的示例
|
||
# url: jdbc:sqlserver://127.0.0.1:1433;DatabaseName=${spring.datasource.dynamic.datasource.slave.name} # SQLServer 连接的示例
|
||
# username: root
|
||
# password: 123456
|
||
# username: sa
|
||
# password: JSm:g(*%lU4ZAkz06cd52KqT3)i1?H7W
|
||
|
||
# Redis 配置。Redisson 默认的配置足够使用,一般不需要进行调优
|
||
redis:
|
||
host: 127.0.0.1 # 地址
|
||
port: 6379 # 端口
|
||
database: 0 # 数据库索引
|
||
# password: 123456 # 密码,建议生产环境开启
|
||
|
||
--- #################### MQ 消息队列相关配置 ####################
|
||
#spring:
|
||
# cloud:
|
||
# stream:
|
||
# rocketmq:
|
||
# # RocketMQ Binder 配置项,对应 RocketMQBinderConfigurationProperties 类
|
||
# binder:
|
||
# name-server: 127.0.0.1:9876 # RocketMQ Namesrv 地址
|
||
# binding-retry-interval: 7200 # 消息绑定重试间隔时间,单位:秒,默认为 30 秒。考虑到本地可能不启动 RocketMQ 服务,设置为 2 小时
|
||
|
||
--- #################### 定时任务相关配置 ####################
|
||
|
||
xxl:
|
||
job:
|
||
enabled: false # 是否开启调度中心,默认为 true 开启
|
||
admin:
|
||
addresses: http://127.0.0.1:9090/xxl-job-admin # 调度中心部署跟地址
|
||
|
||
--- #################### 服务保障相关配置 ####################
|
||
|
||
# Lock4j 配置项
|
||
lock4j:
|
||
acquire-timeout: 3000 # 获取分布式锁超时时间,默认为 3000 毫秒
|
||
expire: 30000 # 分布式锁的超时时间,默认为 30 毫秒
|
||
|
||
--- #################### 监控相关配置 ####################
|
||
|
||
# Actuator 监控端点的配置项
|
||
management:
|
||
endpoints:
|
||
web:
|
||
base-path: /actuator # Actuator 提供的 API 接口的根目录。默认为 /actuator
|
||
exposure:
|
||
include: '*' # 需要开放的端点。默认值只打开 health 和 info 两个端点。通过设置 * ,可以开放所有端点。
|
||
|
||
# Spring Boot Admin 配置项
|
||
spring:
|
||
boot:
|
||
admin:
|
||
# Spring Boot Admin Client 客户端的相关配置
|
||
client:
|
||
instance:
|
||
service-host-type: IP # 注册实例时,优先使用 IP [IP, HOST_NAME, CANONICAL_HOST_NAME]
|
||
|
||
# 日志文件配置
|
||
logging:
|
||
level:
|
||
# 配置自己写的 MyBatis Mapper 打印日志
|
||
com.jysoft.module.system.dal.mapper: debug
|
||
|
||
--- #################### jysoft相关配置 ####################
|
||
|
||
# jysoft配置项,设置当前项目所有自定义的配置
|
||
jysoft:
|
||
env: # 多环境的配置项
|
||
tag: ${HOSTNAME}
|
||
security:
|
||
mock-enable: true
|
||
xss:
|
||
enable: false
|
||
exclude-urls: # 如下两个 url,仅仅是为了演示,去掉配置也没关系
|
||
- ${spring.boot.admin.context-path}/** # 不处理 Spring Boot Admin 的请求
|
||
- ${management.endpoints.web.base-path}/** # 不处理 Actuator 的请求
|
||
access-log: # 访问日志的配置项
|
||
enable: false
|
||
isc:
|
||
url: http://xdl.sgccid.com:22002/isc_sso/oauth2.0/profile
|
||
source_log: local
|
||
|
||
server:
|
||
tomcat:
|
||
initial-memory: 128m
|
||
max-memory: 256m
|