唐耀东
2022-02-18 ce34d9d0ac101f816a0fc7f798607adfe44d7885
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
# 项目相关配置
ruoyi:
  # 名称
  name: RuoYi-Vue-Plus
  # 版本
  version: ${ruoyi-vue-plus.version}
  # 版权年份
  copyrightYear: 2021
  # 实例演示开关
  demoEnabled: true
  # 获取ip地址开关
  addressEnabled: true
  # 缓存懒加载
  cacheLazy: true
 
captcha:
  # 页面 <参数设置> 可开启关闭 验证码校验
  # 验证码类型 math 数组计算 char 字符验证
  type: CHAR
  # line 线段干扰 circle 圆圈干扰 shear 扭曲干扰
  category: LINE
  # 数字验证码位数
  numberLength: 1
  # 字符验证码长度
  charLength: 4
 
# 开发环境配置
server:
  # 服务器的HTTP端口,默认为8080
  port: 8080
  servlet:
    # 应用的访问路径
    context-path: /
  # undertow 配置
  undertow:
    # HTTP post内容的最大大小。当值为-1时,默认值为大小是无限的
    max-http-post-size: -1
    # 以下的配置会影响buffer,这些buffer会用于服务器连接的IO操作,有点类似netty的池化内存管理
    # 每块buffer的空间大小,越小的空间被利用越充分
    buffer-size: 512
    # 是否分配的直接内存
    direct-buffers: true
    threads:
      # 设置IO线程数, 它主要执行非阻塞的任务,它们会负责多个连接, 默认设置每个CPU核心一个线程
      io: 8
      # 阻塞任务线程池, 当执行类似servlet请求阻塞操作, undertow会从这个线程池中取得线程,它的值设置取决于系统的负载
      worker: 256
 
# 日志配置
logging:
  level:
    com.ruoyi: @logging.level@
    org.springframework: warn
  config: classpath:logback.xml
 
# tlog 全局访问性能拦截
tlog:
  enable-invoke-time-print: true
 
# Spring配置
spring:
  application:
    name: ${ruoyi.name}
  # 资源信息
  messages:
    # 国际化资源文件路径
    basename: i18n/messages
  profiles:
    active: @profiles.active@
  # 文件上传
  servlet:
    multipart:
      # 单个文件大小
      max-file-size: 50MB
      # 设置总上传的文件大小
      max-request-size: 50MB
  # 服务模块
  devtools:
    restart:
      # 热部署开关
      enabled: true
  # 与vue整合部署使用
  thymeleaf:
    # 将系统模板放置到最前面 否则会与 springboot-admin 页面冲突
    template-resolver-order: 1
  jackson:
    # 日期格式化
    date-format: yyyy-MM-dd HH:mm:ss
    serialization:
      # 格式化输出
      indent_output: false
      # 忽略无法转换的对象
      fail_on_empty_beans: false
    deserialization:
      # 允许对象忽略json中不存在的属性
      fail_on_unknown_properties: false
 
# token配置
token:
  # 令牌自定义标识
  header: Authorization
  # 令牌密钥
  secret: abcdefghijklmnopqrstuvwxyz
  # 令牌有效期(默认30分钟)
  expireTime: 30
 
# security配置
security:
  # 登出路径
  logout-url: /logout
  # 匿名路径
  anonymous:
    - /login
    - /register
    - /captchaImage
    # swagger 文档配置
    - /doc.html
    - /swagger-resources/**
    - /webjars/**
    - /*/api-docs
    # druid 监控配置
    - /druid/**
    # actuator 监控配置
    - /actuator
    - /actuator/**
  # 用户放行
  permit-all:
 
# 重复提交
repeat-submit:
  # 全局间隔时间(毫秒)
  interval: 5000
 
# MyBatisPlus配置
# https://baomidou.com/config/
mybatis-plus:
  # 不支持多包, 如有需要可在注解配置 或 提升扫包等级
  # 例如 com.**.**.mapper
  mapperPackage: com.ruoyi.**.mapper
  # 对应的 XML 文件位置
  mapperLocations: classpath*:mapper/**/*Mapper.xml
  # 实体扫描,多个package用逗号或者分号分隔
  typeAliasesPackage: com.ruoyi.**.domain
  # 启动时是否检查 MyBatis XML 文件的存在,默认不检查
  checkConfigLocation: false
  # 通过该属性可指定 MyBatis 的执行器,MyBatis 的执行器总共有三种:
  # SIMPLE:每个语句创建新的预处理器 REUSE:会复用预处理器 BATCH:批量执行所有的更新
  executorType: SIMPLE
  configuration:
    # 自动驼峰命名规则(camel case)映射
    mapUnderscoreToCamelCase: true
    # 当设置为 true 的时候,懒加载的对象可能被任何懒属性全部加载,否则,每个属性都按需加载。需要和 lazyLoadingEnabled 一起使用。
    aggressiveLazyLoading: true
    # MyBatis 自动映射策略
    # NONE:不启用 PARTIAL:只对非嵌套 resultMap 自动映射 FULL:对所有 resultMap 自动映射
    autoMappingBehavior: PARTIAL
    # MyBatis 自动映射时未知列或未知属性处理策
    # NONE:不做处理 WARNING:打印相关警告 FAILING:抛出异常和详细信息
    autoMappingUnknownColumnBehavior: NONE
    # Mybatis一级缓存,默认为 SESSION
    # SESSION session级别缓存 STATEMENT 关闭一级缓存
    localCacheScope: SESSION
    # 开启Mybatis二级缓存,默认为 true
    cacheEnabled: false
    # 更详细的日志输出 会有性能损耗 org.apache.ibatis.logging.stdout.StdOutImpl
    # 关闭日志记录 (可单纯使用 p6spy 分析) org.apache.ibatis.logging.nologging.NoLoggingImpl
    # 默认日志输出 org.apache.ibatis.logging.slf4j.Slf4jImpl
    logImpl: org.apache.ibatis.logging.nologging.NoLoggingImpl
  global-config:
    # 是否打印 Logo banner
    banner: true
    # 是否初始化 SqlRunner
    enableSqlRunner: false
    dbConfig:
      # 主键类型
      # AUTO 自增 NONE 空 INPUT 用户输入 ASSIGN_ID 雪花 ASSIGN_UUID 唯一 UUID
      idType: AUTO
      # 表名是否使用驼峰转下划线命名,只对表名生效
      tableUnderline: true
      # 大写命名,对表名和字段名均生效
      capitalMode: false
      # 逻辑已删除值
      logicDeleteValue: 2
      # 逻辑未删除值
      logicNotDeleteValue: 0
      # 字段验证策略之 insert,在 insert 的时候的字段验证策略
      # IGNORED 忽略 NOT_NULL 非NULL NOT_EMPTY 非空 DEFAULT 默认 NEVER 不加入 SQL
      insertStrategy: NOT_NULL
      # 字段验证策略之 update,在 update 的时候的字段验证策略
      updateStrategy: NOT_NULL
      # 字段验证策略之 select,在 select 的时候的字段验证策略既 wrapper 根据内部 entity 生成的 where 条件
      where-strategy: NOT_NULL
 
# Swagger配置
swagger:
  # 是否开启swagger
  enabled: true
  # 请求前缀
  pathMapping: /dev-api
  # 标题
  title: '标题:${ruoyi.name}后台管理系统_接口文档'
  # 描述
  description: '描述:用于管理集团旗下公司的人员信息,具体包括XXX,XXX模块...'
  # 版本
  version: '版本号: ${ruoyi-vue-plus.version}'
  # 作者信息
  contact:
    name: Lion Li
    email: crazylionli@163.com
    url: https://gitee.com/JavaLionLi/RuoYi-Vue-Plus
  groups:
    - name: 1.演示案例
      basePackage: com.ruoyi.demo
    - name: 2.系统模块
      basePackage: com.ruoyi.web
    - name: 3.代码生成模块
      basePackage: com.ruoyi.generator
 
knife4j:
  # 是否开启Knife4j增强模式
  enable: true
  # 是否开启生产环境保护策略
  production: @knife4j.production@
  # 前端Ui的个性化配置属性
  setting:
    # 默认语言
    language: zh-CN
    # 是否显示Footer
    enableFooter: false
    # 是否开启动态参数调试功能
    enableDynamicParameter: true
    # 是否在每个Debug调试栏后显示刷新变量按钮
    enableReloadCacheParameter: true
 
# 防止XSS攻击
xss:
  # 过滤开关
  enabled: true
  # 排除链接(多个用逗号分隔)
  excludes: /system/notice
  # 匹配链接
  urlPatterns: /system/*,/monitor/*,/tool/*
 
# 全局线程池相关配置
thread-pool:
  # 是否开启线程池
  enabled: false
  # 核心线程池大小
  corePoolSize: 8
  # 最大可创建的线程数
  maxPoolSize: 16
  # 队列最大长度
  queueCapacity: 128
  # 线程池维护线程所允许的空闲时间
  keepAliveSeconds: 300
  # 线程池对拒绝任务(无线程可用)的处理策略
  # CALLER_RUNS_POLICY 调用方执行
  # DISCARD_OLDEST_POLICY 放弃最旧的
  # DISCARD_POLICY 丢弃
  # ABORT_POLICY 中止
  rejectedExecutionHandler: CALLER_RUNS_POLICY
 
--- # redisson 缓存配置
redisson:
  cacheGroup:
    # 用例: @Cacheable(cacheNames="groupId", key="#XXX") 方可使用缓存组配置
    - groupId: redissonCacheMap
      # 组过期时间(脚本监控)
      ttl: 60000
      # 组最大空闲时间(脚本监控)
      maxIdleTime: 60000
      # 组最大长度
      maxSize: 0
    - groupId: testCache
      ttl: 1000
      maxIdleTime: 500
 
--- # 分布式锁 lock4j 全局配置
lock4j:
  # 获取分布式锁超时时间,默认为 3000 毫秒
  acquire-timeout: 3000
  # 分布式锁的超时时间,默认为 30 毫秒
  expire: 30000
 
--- # Actuator 监控端点的配置项
management:
  endpoints:
    web:
      # Actuator 提供的 API 接口的根目录。默认为 /actuator
      base-path: /actuator
      exposure:
        # 需要开放的端点。默认值只打开 health 和 info 两个端点。通过设置 * ,可以开放所有端点。
        # 生产环境不建议放开所有 根据项目需求放开即可
        include: @endpoints.include@
  endpoint:
    logfile:
      external-file: ./logs/sys-console.log