server: tomcat: relaxed-query-chars: [ '|','{','}','[',']' ] #字符问题:https://blog.csdn.net/CanYue_Yi/article/details/109182577 relaxed-path-chars: [ '|','{','}','[',']' ] #字符问题: https://blog.csdn.net/weixin_41996632/article/details/90715118 lucene: index: path: D:\lucene\index spring: profiles: active: dev autoconfigure: exclude: com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceAutoConfigure messages: basename: language/login/login,language/error/error,language/buss/buss,language/task/task datasource: druid: initial-size: 5 #初始化时建立物理连接的个数 min-idle: 15 #最小连接池数量 maxActive: 30 #最大连接池数量 maxWait: 3000 #获取连接时最大等待时间,单位毫秒 #申请连接的时候检测,如果空闲时间大于timeBetweenEvictionRunsMillis,执行validationQuery检测连接是否有效。 test-while-idle: true time-between-eviction-runs-millis: 300000 #既作为检测的间隔时间又作为test-while-idle执行的依据 min-evictable-idle-time-millis: 900000 #销毁线程时检测当前连接的最后活动时间和当前时间差大于该值时,关闭当前连接 #用来检测连接是否有效的sql #mysql中为 select 'x' #oracle中为 select 1 from dual validation-query: SELECT 'x' test-on-borrow: true #申请连接时会执行validationQuery检测连接是否有效,开启会降低性能,默认为true test-on-return: false #归还连接时会执行validationQuery检测连接是否有效,开启会降低性能,默认为true exception-sorter: true #当数据库抛出不可恢复的异常时,抛弃该连接 pool-prepared-statements: true #是否缓存preparedStatement,mysql5.5+建议开启 max-pool-prepared-statement-per-connection-size: 20 #当值大于20时poolPreparedStatements会自动修改为true #通过connectProperties属性来打开mergeSql功能;慢SQL记录 connection-properties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000 use-global-data-source-stat: true #合并多个DruidDataSource的监控数据 #filters通过别名的方式配置扩展插件,常用的插件有: #监控统计用的filter:stat 日志用的filter:log4j 防御sql注入的filter:wall filter: stat: enabled: true # 记录慢SQL log-slow-sql: true slow-sql-millis: 1000 merge-sql: true wall: config: multi-statement-allow: true #设置访问druid监控页面的拦截路径及账号和密码,默认没有 stat-view-servlet: enabled: true url-pattern: /druid/* login-username: admin login-password: admin dynamic: primary: mysql datasource: mysql: driver-class-name: net.sf.log4jdbc.sql.jdbcapi.DriverSpy url: jdbc:log4jdbc:mysql://${DB_HOST:${nl.config.mysql.ip}}:${DB_PORT:${nl.config.mysql.port}}/${DB_NAME:${nl.config.mysql.database}}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true&allowPublicKeyRetrieval=true&useSSL=false username: ${DB_USER:${nl.config.mysql.username}} password: ${DB_PWD:${nl.config.mysql.password}} type: com.alibaba.druid.pool.DruidDataSource oracle: driver-class-name: oracle.jdbc.OracleDriver url: jdbc:oracle:thin:@${nl.config.oracle.ip}:${nl.config.oracle.port}:${nl.config.oracle.scheme} username: ${DB_USER:${nl.config.oracle.username}} password: ${DB_PWD:${nl.config.oracle.password}} type: com.alibaba.druid.pool.DruidDataSource sqlserver: driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver url: jdbc:sqlserver://${nl.config.sqlserver.ip}\${nl.config.sqlserver.port};DatabaseName=${nl.config.sqlserver.database} username: ${DB_USER:${nl.config.sqlserver.username}} password: ${DB_PWD:${nl.config.sqlserver.password}} type: com.alibaba.druid.pool.DruidDataSource flyway: #开启 enabled: true #当迁移时发现目标schema非空,而且带有没有元数据的表时,是否自动执行基准迁移,默认false. baseline-on-migrate: true # 检测迁移脚本的路径是否存在,如不存在,则抛出异常 check-location: true #sql脚本位置 locations: classpath:db/migration #是否允许无序的迁移,默认false out-of-order: false #编码 encoding: UTF-8 freemarker: check-template-location: false jackson: time-zone: GMT+8 data: redis: repositories: enabled: false redis: # 数据库索引 host: ${REDIS_HOST:${nl.config.redis.ip}} port: ${REDIS_PORT:${nl.config.redis.port}} password: ${REDIS_PWD:${nl.config.redis.password}} redisson: config: | threads: 4 nettyThreads: 4 singleServerConfig: database: 3 connectionMinimumIdleSize: 8 connectionPoolSize: 8 address: redis://127.0.0.1:6379 idleConnectionTimeout: 10000 timeout: 3000 dynamic: tp: enabled: true # 是否启用 dynamictp,默认true enabledBanner: false # 是否启用 控制台banner,默认true enabledCollect: true # 是否开启监控指标采集,默认true collectorTypes: logging,test_collect # 监控数据采集器类型(logging | micrometer | internal_logging),默认micrometer logPath: ${nl.config.dynamic-log-path} # 监控日志数据路径,默认 ${user.home}/logs,采集类型非logging不用配置 monitorInterval: 8 tomcatTp: # tomcat webserver 线程池配置 threadPoolAliasName: tomcat 线程池 # 线程池别名,可选 corePoolSize: 100 maximumPoolSize: 200 keepAliveTime: 60 runTimeout: 10000 queueTimeout: 100 notifyItems: # 报警项,不配置自动会按默认值配置(变更通知、容量报警、活性报警、拒绝报警、任务超时报警) - type: change enabled: true - type: capacity # 队列容量使用率,报警项类型,查看源码 NotifyTypeEnum枚举类 enabled: true threshold: 80 # 报警阈值,默认70,意思是队列使用率达到70%告警 interval: 120 # 报警间隔(单位:s),默认120 - type: liveness # 线程池活性 enabled: true threshold: 80 # 报警阈值,默认 70,意思是活性达到70%告警 - type: reject # 触发任务拒绝告警 enabled: true threshold: 100 # 默认阈值10 - type: run_timeout # 任务执行超时告警 enabled: true threshold: 100 # 默认阈值10 - type: queue_timeout # 任务排队超时告警 enabled: true threshold: 100 # 默认阈值10 task: pool: # 核心线程池大小 core-pool-size: 10 # 最大线程数 max-pool-size: 30 # 活跃时间 keep-alive-seconds: 60 # 队列容量 queue-capacity: 50 # 登录相关配置 login: # 登录缓存 cache-enable: true # 是否限制单用户登录 single-login: false #密码加密传输,前端公钥加密,后端私钥解密 rsa: private_key: MIIBUwIBADANBgkqhkiG9w0BAQEFAASCAT0wggE5AgEAAkEA0vfvyTdGJkdbHkB8mp0f3FE0GYP3AYPaJF7jUd1M0XxFSE2ceK3k2kw20YvQ09NJKk+OMjWQl9WitG9pB6tSCQIDAQABAkA2SimBrWC2/wvauBuYqjCFwLvYiRYqZKThUS3MZlebXJiLB+Ue/gUifAAKIg1avttUZsHBHrop4qfJCwAI0+YRAiEA+W3NK/RaXtnRqmoUUkb59zsZUBLpvZgQPfj1MhyHDz0CIQDYhsAhPJ3mgS64NbUZmGWuuNKp5coY2GIj/zYDMJp6vQIgUueLFXv/eZ1ekgz2Oi67MNCk5jeTF2BurZqNLR3MSmUCIFT3Q6uHMtsB9Eha4u7hS31tj1UWE+D+ADzp59MGnoftAiBeHT7gDMuqeJHPL4b+kC+gzV4FGTfhR9q3tTbklZkD2A== #是否允许生成代码,生产环境设置为false generator: enabled: true # IP 本地解析 ip: local-parsing: true # 文件存储路径 file: mac: path: ~/file/ avatar: ~/avatar/ linux: path: /home/eladmin/file/ avatar: /home/eladmin/avatar/ windows: path: C:\eladmin\file\ avatar: C:\eladmin\avatar\ # 文件大小 /M maxSize: 100 avatarMaxSize: 5 logging: file: path: D:\log\beian\lms config: classpath:logback-spring.xml # sa-token白名单配置 security: # 排除路径 excludes: # 认证 - /auth/login - /auth/code - /auth/logout - /sys-user-do/** - /webjars/** - /file/** - /webSocket/** # 静态资源 - /*.html - /**/*.html - /**/*.css - /**/*.js - /favicon.ico - /*/api-docs - /*/api-docs/** # druid 监控配置 - /druid/** # actuator 监控配置 - /actuator - /actuator/** # 上传 - /api/localStorage/pictures # 参数 - /api/param/getValueByCode # mybatis-plus配置 mybatis-plus: configuration: map-underscore-to-camel-case: false call-setters-on-nulls: true jdbc-type-for-null: null # log-impl: org.apache.ibatis.logging.stdout.StdOutImpl mapper-locations: - classpath:/org/nl/**/mapper/**/*.xml global-config: db-config: id-type: INPUT banner: false # Sa-Token配置 sa-token: # token 名称 (同时也是cookie名称) token-name: Authorization # token 有效期,单位s 默认30天, -1代表永不过期 timeout: 2592000 # token 临时有效期 (指定时间内无操作就视为token过期) 单位: 秒 activity-timeout: -1 # 是否允许同一账号并发登录 (为true时允许一起登录, 为false时新登录挤掉旧登录) is-concurrent: true # 在多人登录同一账号时,是否共用一个token (为true时所有登录共用一个token, 为false时每次登录新建一个token) is-share: false # token风格 token-style: random-128 # 是否输出操作日志 is-log: false jwt-secret-key: opsjajisdnnca0sdkksdfaaasdfwwq # token 前缀 token-prefix: Bearer sso: # Ticket有效期 (单位: 秒),默认五分钟 ticket-timeout: 300 # 所有允许的授权回调地址 allow-url: "*" # 是否打开单点注销功能 is-slo: true # ------- SSO-模式三相关配置 (下面的配置在SSO模式三并且 is-slo=true 时打开) # 是否打开模式三 isHttp: true # 接口调用秘钥(用于SSO模式三的单点注销功能) secretkey: kQwIOrYvnXmSDkwEiFngrKidMcdrgKor # ---- 除了以上配置项,你还需要为 Sa-Token 配置http请求处理器(文档有步骤说明) is-read-cookie: true is-print: false # 未登录 StpUtil.getTokenSession() 设置值,获取值 @SaIgnore 得忽略接口 token-session-check-login: false alone-redis: # Redis数据库索引(默认为0) database: ${nl.config.redis.database} # Redis服务器地址 host: ${nl.config.redis.ip} # Redis服务器连接端口 port: ${nl.config.redis.port} # Redis服务器连接密码(默认为空) password: # 连接超时时间 timeout: 10s jetcache: statIntervalMinutes: 15 areaInCacheName: false local: default: type: linkedhashmap keyConvertor: fastjson remote: default: type: redis keyConvertor: fastjson2 broadcastChannel: projectA valueEncoder: java valueDecoder: java poolConfig: minIdle: 5 maxIdle: 20 maxTotal: 50 host: ${nl.config.redis.ip} port: ${nl.config.redis.port}