application.yml 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321
  1. # 项目相关配置
  2. taais:
  3. # 名称
  4. name: taais
  5. # 版本
  6. version: ${revision}
  7. # 版权年份
  8. copyrightYear: 2023 ~ 2024
  9. # 实例演示开关
  10. demoEnabled: true
  11. # 文件路径 示例( Windows配置D:/km/uploadPath,Linux配置 /home/km/uploadPath)
  12. profile: D:/taais/uploadPath
  13. # 获取ip地址开关
  14. addressEnabled: false
  15. captcha:
  16. enable: true
  17. # 页面 <参数设置> 可开启关闭 验证码校验
  18. # 验证码类型 math 数组计算 char 字符验证
  19. type: MATH
  20. # line 线段干扰 circle 圆圈干扰 shear 扭曲干扰
  21. category: CIRCLE
  22. # 数字验证码位数
  23. numberLength: 1
  24. # 字符验证码长度
  25. charLength: 4
  26. # 开发环境配置
  27. server:
  28. # 服务器的HTTP端口,默认为8080
  29. port: 9090
  30. servlet:
  31. # 应用的访问路径
  32. context-path: /
  33. # tomcat web容器配置
  34. tomcat:
  35. # tomcat的URI编码
  36. uri-encoding: UTF-8
  37. # 连接数满后的排队数,默认为100
  38. accept-count: 1000
  39. # undertow web容器配置
  40. # undertow:
  41. # # HTTP post内容的最大大小。当值为-1时,默认值为大小是无限的
  42. # max-http-post-size: -1
  43. # # 以下的配置会影响buffer,这些buffer会用于服务器连接的IO操作,有点类似netty的池化内存管理
  44. # # 每块buffer的空间大小,越小的空间被利用越充分
  45. # buffer-size: 512
  46. # # 是否分配的直接内存
  47. # direct-buffers: true
  48. # threads:
  49. # # 设置IO线程数, 它主要执行非阻塞的任务,它们会负责多个连接, 默认设置每个CPU核心一个线程
  50. # io: 8
  51. # # 阻塞任务线程池, 当执行类似servlet请求阻塞操作, undertow会从这个线程池中取得线程,它的值设置取决于系统的负载
  52. # worker: 256
  53. # 日志配置
  54. logging:
  55. level:
  56. com.taais: @logging.level@
  57. org.springframework: warn
  58. tech.powerjob.worker.background: warn
  59. org.mybatis.spring.mapper: error
  60. config: classpath:logback.xml
  61. # 用户配置
  62. user:
  63. password:
  64. # 密码最大错误次数
  65. maxRetryCount: 5
  66. # 密码锁定时间(默认10分钟)
  67. lockTime: 10
  68. # Spring配置
  69. spring:
  70. application:
  71. name: ${taais.name}
  72. threads:
  73. # 启用JAVA21虚拟线程
  74. virtual:
  75. enabled: true
  76. # 资源信息
  77. messages:
  78. # 国际化资源文件路径
  79. basename: i18n/messages
  80. profiles:
  81. active: @profiles.active@
  82. # 文件上传
  83. servlet:
  84. multipart:
  85. # 单个文件大小
  86. max-file-size: 10MB
  87. # 设置总上传的文件大小
  88. max-request-size: 20MB
  89. mvc:
  90. format:
  91. date-time: yyyy-MM-dd HH:mm:ss
  92. jackson:
  93. # 日期格式化
  94. date-format: yyyy-MM-dd HH:mm:ss
  95. serialization:
  96. # 格式化输出
  97. indent_output: false
  98. # 忽略无法转换的对象
  99. fail_on_empty_beans: false
  100. deserialization:
  101. # 允许对象忽略json中不存在的属性
  102. fail_on_unknown_properties: false
  103. # 服务模块
  104. devtools:
  105. restart:
  106. # 热部署开关
  107. enabled: true
  108. # PageHelper分页插件
  109. pagehelper:
  110. #helperDialect: mysql、postgresql pagehelper分页插件会自动检测当前的数据库链接,自动选择合适的分页方式。
  111. supportMethodsArguments: true
  112. params: count=countSql
  113. # MyBatisFlex公共配置
  114. # https://mybatis-flex.com/zh/base/configuration.html
  115. mybatis-flex:
  116. # 搜索指定包别名
  117. type-aliases-package: com.taais.**.domain
  118. # 不支持多包, 如有需要可在注解配置 或 提升扫包等级:com.**.**.mapper
  119. mapper-package: com.taais.**.mapper
  120. # 配置mapper的扫描,找到所有的mapper.xml映射文件
  121. mapper-locations: classpath*:mapper/**/*Mapper.xml
  122. configuration:
  123. ## 以下为mybatis原生配置 https://mybatis.org/mybatis-3/zh/configuration.html
  124. # 自动驼峰命名规则(camel case)映射
  125. map_underscore_to_camel_case: true
  126. # MyBatis 自动映射策略
  127. # NONE:不启用 PARTIAL:只对非嵌套 resultMap 自动映射 FULL:对所有 resultMap 自动映射
  128. auto_mapping_behavior: FULL
  129. # MyBatis 自动映射时未知列或未知属性处理策
  130. # NONE:不做处理 WARNING:打印相关警告 FAILING:抛出异常和详细信息
  131. auto_mapping_unknown_column_behavior: NONE
  132. # 更详细的日志输出 会有性能损耗 org.apache.ibatis.logging.stdout.StdOutImpl
  133. # 关闭日志记录 org.apache.ibatis.logging.nologging.NoLoggingImpl
  134. # 默认日志输出 org.apache.ibatis.logging.slf4j.Slf4jImpl
  135. #log_impl: org.apache.ibatis.logging.stdout.StdOutImpl
  136. logImpl: org.apache.ibatis.logging.nologging.NoLoggingImpl
  137. cacheEnabled: true
  138. global-config:
  139. # 是否控制台打印 MyBatis-Flex 的 LOGO 及版本号
  140. print-banner: false
  141. # 全局的 ID 生成策略配置:雪花算法
  142. key-config:
  143. key-type: Generator
  144. value: snowFlakeId
  145. # 逻辑未删除值
  146. normal-value-of-logic-delete: 0
  147. # 逻辑已删除值(框架表均使用此值 禁止随意修改)
  148. deleted-value-of-logic-delete: 1
  149. # 默认的逻辑删除字段
  150. logic-delete-column: del_flag
  151. # 默认的多租户字段
  152. tenant-column: tenant_id
  153. # 默认的乐观锁字段
  154. version-column: version
  155. # 数据加密
  156. mybatis-encryptor:
  157. # 是否开启加密
  158. enable: false
  159. # 默认加密算法
  160. algorithm: BASE64
  161. # 编码方式 BASE64/HEX。默认BASE64
  162. encode: BASE64
  163. # 安全秘钥 对称算法的秘钥 如:AES,SM4
  164. password:
  165. # 公私钥 非对称算法的公私钥 如:SM2,RSA
  166. publicKey:
  167. privateKey:
  168. # api接口加密
  169. api-decrypt:
  170. # 是否开启全局接口加密
  171. enabled: true
  172. # AES 加密头标识
  173. headerFlag: encrypt-key
  174. # 响应加密公钥 非对称算法的公私钥 如:SM2,RSA 使用者请自行更换
  175. # 对应前端解密私钥 MIIBVAIBADANBgkqhkiG9w0BAQEFAASCAT4wggE6AgEAAkEAmc3CuPiGL/LcIIm7zryCEIbl1SPzBkr75E2VMtxegyZ1lYRD+7TZGAPkvIsBcaMs6Nsy0L78n2qh+lIZMpLH8wIDAQABAkEAk82Mhz0tlv6IVCyIcw/s3f0E+WLmtPFyR9/WtV3Y5aaejUkU60JpX4m5xNR2VaqOLTZAYjW8Wy0aXr3zYIhhQQIhAMfqR9oFdYw1J9SsNc+CrhugAvKTi0+BF6VoL6psWhvbAiEAxPPNTmrkmrXwdm/pQQu3UOQmc2vCZ5tiKpW10CgJi8kCIFGkL6utxw93Ncj4exE/gPLvKcT+1Emnoox+O9kRXss5AiAMtYLJDaLEzPrAWcZeeSgSIzbL+ecokmFKSDDcRske6QIgSMkHedwND1olF8vlKsJUGK3BcdtM8w4Xq7BpSBwsloE=
  176. publicKey: MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAJnNwrj4hi/y3CCJu868ghCG5dUj8wZK++RNlTLcXoMmdZWEQ/u02RgD5LyLAXGjLOjbMtC+/J9qofpSGTKSx/MCAwEAAQ==
  177. # 请求解密私钥 非对称算法的公私钥 如:SM2,RSA 使用者请自行更换
  178. # 对应前端加密公钥 MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAKoR8mX0rGKLqzcWmOzbfj64K8ZIgOdHnzkXSOVOZbFu/TJhZ7rFAN+eaGkl3C4buccQd/EjEsj9ir7ijT7h96MCAwEAAQ==
  179. privateKey: MIIBVAIBADANBgkqhkiG9w0BAQEFAASCAT4wggE6AgEAAkEAqhHyZfSsYourNxaY7Nt+PrgrxkiA50efORdI5U5lsW79MmFnusUA355oaSXcLhu5xxB38SMSyP2KvuKNPuH3owIDAQABAkAfoiLyL+Z4lf4Myxk6xUDgLaWGximj20CUf+5BKKnlrK+Ed8gAkM0HqoTt2UZwA5E2MzS4EI2gjfQhz5X28uqxAiEA3wNFxfrCZlSZHb0gn2zDpWowcSxQAgiCstxGUoOqlW8CIQDDOerGKH5OmCJ4Z21v+F25WaHYPxCFMvwxpcw99EcvDQIgIdhDTIqD2jfYjPTY8Jj3EDGPbH2HHuffvflECt3Ek60CIQCFRlCkHpi7hthhYhovyloRYsM+IS9h/0BzlEAuO0ktMQIgSPT3aFAgJYwKpqRYKlLDVcflZFCKY7u3UP8iWi1Qw0Y=
  180. # SpringDoc配置
  181. springdoc:
  182. #需要扫描的包,可以配置多个,使用逗号分割
  183. packages-to-scan: com.taais
  184. paths-to-exclude: #配置不包含在swagger文档中的api
  185. - /api/test/**
  186. - /api/mockito/data
  187. swagger-ui:
  188. enabled: true #开启/禁止swagger,prod可以设置为false
  189. version: 5.10.3 #指定swagger-ui的版本号
  190. disable-swagger-default-url: true #禁用default petstore url
  191. path: /swagger-ui.html #swagger页面
  192. persistAuthorization: true # 持久化认证数据,如果设置为 true,它会保留授权数据并且不会在浏览器关闭/刷新时丢失
  193. csrf:
  194. enabled: true # 启用CSRF支持
  195. api-docs:
  196. enabled: true #开启/禁止api-docs, prod可以设置为false
  197. use-management-port: false
  198. enable-spring-security: true
  199. info:
  200. # 标题
  201. title: 'Taais API Doc'
  202. # 描述
  203. description: 'Taais SrpingDoc demo'
  204. # 版本
  205. version: '版本号: ${taais.version}'
  206. # 作者信息
  207. contact:
  208. name: wgk
  209. email: 123434@qq.com
  210. url: https://gitee.com/gaokunw/km
  211. components:
  212. # 鉴权方式配置
  213. security-schemes:
  214. apiKey:
  215. type: APIKEY
  216. in: HEADER
  217. name: ${sa-token.token-name}
  218. group-configs:
  219. - group: 1.演示模块
  220. packages-to-scan: com.taais.demo
  221. - group: 2.通用模块
  222. packages-to-scan: com.taais.common
  223. - group: 3.系统模块
  224. packages-to-scan: com.taais.system
  225. - group: 4.代码生成模块
  226. packages-to-scan: com.taais.generator
  227. # 防止XSS攻击
  228. xss:
  229. # 过滤开关
  230. enabled: true
  231. # 排除链接(多个用逗号分隔)
  232. excludes: /system/notice
  233. # 匹配链接
  234. urlPatterns: /system/*,/monitor/*,/tool/*,/demo/*
  235. # 分布式锁 lock4j 全局配置
  236. lock4j:
  237. # 获取分布式锁超时时间,默认为 3000 毫秒
  238. acquire-timeout: 3000
  239. # 分布式锁的超时时间,默认为 30 秒
  240. expire: 30000
  241. # Sa-Token配置
  242. sa-token:
  243. # token名称 (同时也是cookie名称)
  244. token-name: Authorization
  245. # token固定超时 设为七天 (必定过期) 单位: 秒
  246. timeout: 604800
  247. # 多端不同 token 有效期 可查看 LoginHelper.loginByDevice 方法自定义
  248. # token最低活跃时间 (指定时间无操作就过期) 单位: 秒
  249. active-timeout: 1800
  250. # 是否允许同一账号并发登录 (为true时允许一起登录, 为false时新登录挤掉旧登录)
  251. is-concurrent: true
  252. # 在多人登录同一账号时,是否共用一个token (为true时所有登录共用一个token, 为false时每次登录新建一个token)
  253. is-share: false
  254. # token 风格(默认可取值:uuid、simple-uuid、random-32、random-64、random-128、tik)
  255. token-style: uuid
  256. # 是否输出操作日志
  257. is-log: true
  258. # jwt秘钥
  259. jwt-secret-key: abcdefghijklmnopqrstuvwxyz
  260. is-print: off #关闭控制台banner
  261. # security配置
  262. security:
  263. # 排除路径
  264. excludes:
  265. # 静态资源
  266. - /*.html
  267. - /**/*.html
  268. - /**/*.css
  269. - /**/*.js
  270. - /profile/**
  271. # 公共路径
  272. - /favicon.ico
  273. - /error
  274. # swagger 文档配置
  275. - /*/api-docs
  276. - /*/api-docs/**
  277. # actuator 监控配置
  278. - /actuator
  279. - /actuator/**
  280. # 其它链接
  281. - /login
  282. - /register
  283. - /captchaImage
  284. - /captcha/get
  285. - /captcha/check
  286. --- # Actuator 监控端点的配置项
  287. management:
  288. endpoints:
  289. web:
  290. exposure:
  291. include: '*'
  292. endpoint:
  293. health:
  294. show-details: ALWAYS
  295. logfile:
  296. external-file: ./logs/sys-console.log
  297. --- # websocket
  298. websocket:
  299. enabled: true
  300. # 路径
  301. path: /resource/websocket
  302. # 设置访问源地址
  303. allowedOrigins: '*'