SpringBoot配置文件application.yml属性解读及使用学习记录

Java中SpringBoot的application.yml配置文件属性解读,及使用记录,以下仅本人的学习记录。

server:   #服务
  port: 9999  #端口
  tomcat:   #tomcat服务
    max-swallow-size: -1 #内置tomcat限制文件最大大小   -1为不限制
  error:  #获取异常对象信息
    include-exception: true #设置属性,以确定显示有关错误的信息。例如,我们可以包含错误消息和堆栈跟踪
    include-stacktrace: ALWAYS ## 是否包含异常的堆栈信息,默认是NEVER,其他ALWAYS,ON_TRACE_PARAM
    include-message: ALWAYS  #异常信息
  servlet:  #翻译为服务连接器,或小服务程序
    context-path: /jeecg-boot   # 如果不配置  则浏览器的访问路径就是 端口号/控制层名字/接口名   配置后就是 端口号/xxx/控制层名字/接口名
  compression:  #是否开启压缩,默认为false
    enabled: true
    min-response-size: 1024  # 压缩的阈值,默认为2048    mime-types:指定要压缩的MIME type,多个以逗号分隔
    mime-types: application/javascript,application/json,application/xml,text/html,text/xml,text/plain,text/css,image/*  #mime-types:指定要压缩的MIME type,多个以逗号分隔

management:  ##应包含的端点ID或所有的“*”。
  endpoints:
    web:
      exposure:
        include: metrics,httptrace   #management.endpoints.web.exposure.include='*' 代表开启全部监控,当然也可以配置需要开启的监控,如: management.endpoints.web.exposure.include=metrics,httptrace

spring:  
  servlet:  
    multipart:  #设置文件上传大小
      max-file-size: 10MB  # 最大文件大小
      max-request-size: 10MB  # 最大请求大小,值可以使用后缀“MB”或“KB”分别表示兆字节或千字节
  mail:  #邮箱配置   pom.xml引入 spring-boot-starter-mail、 spring-boot-starter-freemarker
    host:        #邮箱主机  #SMTP 服务器主机
    username:    # 邮箱用户名  #STP 服务器的登录用户
    password:    # 授权码  #SMTP 服务器的登录密码
    properties: #其他JavaMail会话属性
      mail:
        smtp:
          auth: true  # 认证
          starttls:
            enable: true  # 开启SSL安全模式
            required: true  # 必须启动SSL安全模式
  ## quartz定时任务,采用数据库方式
  quartz:  #调度器
    job-store-type: jdbc    #Quartz作业存储类型
    initialize-schema: embedded   #数据库模式初始化模式
    #定时任务启动开关,true-开  false-关   是否自动启动初始化后的调度
    auto-startup: true
    #延迟1秒启动定时任务   一旦初始化完成,调度程序启动之后的延迟
    startup-delay: 1s
    #启动时更新己存在的Job  配置的作业是否应覆盖现有的作业定义
    overwrite-existing-jobs: true
    properties:    #其他Quartz Scheduler属性
      org:
        quartz:
          scheduler:  #调度器属性
            instanceName: MyScheduler  #调度器的实例名
            instanceId: AUTO  #实例 ID,想要Quartz生成这个值的话,可以设置为 AUTO
          jobStore:  #默认存储在内存中,RAMJobStore快速轻便,但是当进程终止时,所有调度信息都会丢失。负责保持对所有Scheduler“工作数据”的追踪,这些工作数据包括:Ob(任务)Trigger(触发器)Calendar(日历)等
            class: org.springframework.scheduling.quartz.LocalDataSourceJobStore  # 持久化配置  使 Job 存储在内存中
            #您需要为JobStore选择一个DriverDelegate才能使用。DriverDelegate负责执行特定数据库可能需要的任何JDBC工作
            # StdJDBCDelegate是一个使用“vanilla”JDBC代码(和SQL语句)来执行其工作的委托,用于完全符合JDBC的驱动程序
            driverDelegateClass: org.quartz.impl.jdbcjobstore.StdJDBCDelegate
            tablePrefix: QRTZ_  #数据库中quartz表的表名前缀
            isClustered: true  #是否使用集群(如果项目只是部署到一台服务器上就不用了)
            misfireThreshold: 12000  #指定调度引擎设置触发器超时的"临界值"  如果大于misfireThreshold的值 就认为这个触发器真正的超时(也叫Misfires),小于misfireThreshold的值, 那么调度引擎则不认为触发器超时
            clusterCheckinInterval: 15000  #调度实例失效的检查时间间隔
          threadPool:  #线程配置
            class: org.quartz.simpl.SimpleThreadPool  #实现了 org.quartz.spi.ThreadPool 接口的类的全限名称,根据需求创建自己的线程池实现,没有默认值
            threadCount: 10  #控制了多少个工作者线程被创建用来处理Job,至少为1,没有限制最大值,超过100就显得不实用,没有默认值
            threadPriority: 5  #设置工作者线程的优先级,最大10,最小1,正常为5,没有默认值
            threadsInheritContextClassLoaderOfInitializingThread: true  #线程上下文是否初始化,默认为flase
  #json 时间戳统一转换
  jackson:
    date-format:   yyyy-MM-dd HH:mm:ss     #日期格式字符串或完全限定的日期格式类名。例如,`yyyy-MM-dd HH:mm:ss`
    time-zone:   GMT+8    #格式化日期时使用的时区。例如,“America / Los_Angeles”或“GMT + 10”
  aop:
    proxy-target-class: true  #是否要创建基于子类的(CGLIB)代理(true),而不是基于标准Java接口的代理(false)
  activiti:
   #校验流程文件,默认校验resources下的processes文件夹里的流程文件
    check-process-definitions: false
    #启用作业执行器
    async-executor-activate: false
    #启用异步执行器
    job-executor-activate: false
  jpa:
    open-in-view: false  #注册OpenEntityManagerInViewInterceptor。将JPA EntityManager绑定到线程以进行整个请求处理
  #配置freemarker
  freemarker:
    # 设置模板后缀名
    suffix: .ftl
    # 设置文档类型
    content-type: text/html
    # 设置页面编码格式
    charset: UTF-8
    # 设置页面缓存
    cache: false
    prefer-file-system-access: false
    # 设置ftl文件路径
    template-loader-path:
      - classpath:/templates
  # 设置静态文件路径,js,css等
  mvc:   
    static-path-pattern: /**     #用于静态资源的路径模式
    pathmatch: #Spring Boot 2.6+后映射匹配的默认策略已从AntPathMatcher更改为PathPatternParser,需要手动指定为ant-path-matcher
      matching-strategy: ant_path_matcher
  resource:
    static-locations: classpath:/static/,classpath:/public/  #静态资源配置 自定义Spring boot加载前端静态资源路径
  autoconfigure:  # 排除自动配置 即禁用springboot某些类的自动化配置 像数据源什么的  还有其他的配置方法(https://www.cnblogs.com/javastack/p/12016212.html)
    exclude: com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceAutoConfigure
  datasource:
    druid:
      stat-view-servlet:  #配置_StatViewServlet配置,用于展示Druid的统计信息
        enabled: true #是否启用StatViewServlet(监控页面)默认值为false(考虑到安全问题默认并未启动,如需启用建议设置密码或白名单以保障安全)
        loginUsername: admin #监控页面登录的用户名
        loginPassword: 123456 #监控页面所需的密码
        allow:  #允许的IP。  deny优先于allow,如果在deny列表中,就算在allow列表中,也会被拒绝。如果allow没有配置或者为空,则允许所有访问
      web-stat-filter:  #webStatFilter配置
        enabled: true  #是否启用StatFilter默认值false  
    dynamic:
      druid: # 全局druid参数,绝大部分值和默认保持一致。(现已支持的参数如下,不清楚含义不要乱设置)
        # 连接池的配置信息
        # 初始化大小,最小,最大
        initial-size: 5 #初始化时建立物理连接个数
        min-idle: 5  #最小连接池数量
        maxActive: 20  #最大连接池数量
        # 配置获取连接等待超时的时间
        maxWait: 60000
        # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
        timeBetweenEvictionRunsMillis: 60000
        # 配置一个连接在池中最小生存的时间,单位是毫秒
        minEvictableIdleTimeMillis: 300000
        #用来检测连接是否有效的sql,要求是一个查询语句,常用select 'x'。如果validationQuery为null,testOnBorrow、testOnReturn、testWhileIdle都不会起作用
        validationQuery: SELECT 1 FROM DUAL  
        #建议配置为true,不影响性能,并且保证安全性。申请连接的时候检测,如果空闲时间大于timeBetweenEvictionRunsMillis,执行validationQuery检测连接是否有效
        testWhileIdle: true
        #申请连接时执行validationQuery检测连接是否有效,做了这个配置会降低性能
        testOnBorrow: false
        #归还连接时执行validationQuery检测连接是否有效,做了这个配置会降低性能
        testOnReturn: false
        # 打开PSCache,并且指定每个连接上PSCache的大小
        poolPreparedStatements: true
        maxPoolPreparedStatementPerConnectionSize: 20
        # 配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙
        filters: stat,wall,slf4j
        # 通过connectProperties属性来打开mergeSql功能;慢SQL记录
        connectionProperties: druid.stat.mergeSql\=true;druid.stat.slowSqlMillis\=5000
      datasource: #数据源配置
        master:
          url: jdbc:mysql://127.0.0.1:3306/jeecg-boot?characterEncoding=UTF-8&useUnicode=true&useSSL=false&tinyInt1isBit=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai
          username: root
          password: root
          driver-class-name: com.mysql.cj.jdbc.Driver
          # 多数据源配置
          #multi-datasource1:
          #url: jdbc:mysql://localhost:3306/jeecg-boot2?useUnicode=true&characterEncoding=utf8&autoReconnect=true&zeroDateTimeBehavior=convertToNull&transformedBitIsBoolean=true&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai
          #username: root
          #password: root
          #driver-class-name: com.mysql.cj.jdbc.Driver
  #redis 配置
  redis:
    database: 0   #连接工厂使用的数据库索引
    host: 127.0.0.1   #Redis服务器主机
    lettuce:
      pool:
        max-active: 8   #最大连接数据库连接数,设 -1 为没有限制    使用负值无限制
        max-idle: 8     #最大等待连接中的数量,设 0 为没有限制    使用负值表示无限数量的空闲连接
        max-wait: -1ms  #最大建立连接等待时间。如果超过此时间将接到异常。设为-1表示无限制。  使用负值无限期阻止
        min-idle: 0     #最小等待连接中的数量,设 0 为没有限制    此设置仅在其为正时才有效
      shutdown-timeout: 100ms
    password: ''     #redis服务器的登录密码
    port: 6379       #Redis服务器端口
#mybatis plus 设置
mybatis-plus:  #配置映射文件扫描路径
  mapper-locations: classpath*:org/jeecg/modules/**/xml/*Mapper.xml
  global-config:
    # 关闭MP3.0自带的banner
    banner: false
    db-config:
      #主键类型  0:"数据库ID自增",1:"该类型为未设置主键类型", 2:"用户输入ID",3:"全局唯一ID (数字类型唯一ID)", 4:"全局唯一ID UUID",5:"字符串全局唯一ID (idWorker 的字符串表示)";
      id-type: ASSIGN_ID
      # 默认数据库表下划线命名
      table-underline: true
  configuration:
    # 这个配置会将执行的sql打印出来,在开发或测试的时候可以用
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
    # 返回类型为Map,显示null对应的字段
    call-setters-on-nulls: true
#jeecg专用配置
#JimuReport[minidao配置]
minidao:
  base-package: org.jeecg.modules.jmreport.*
#JimuReport[上传配置]
jeecg:
  # 是否启用安全模式
  safeMode: false
  # 签名密钥串(前后端要一致,正式发布请自行修改)
  signatureSecret: dd05f1c54d63749eda95f9fa6d49v442a
  # 本地:local\Minio:minio\阿里云:alioss
  uploadType: local
  path:
    #文件上传根目录 设置
    upload: D://opt//upFiles
    #webapp文件路径
    webapp: D://opt//webapp
  shiro:
    excludeUrls: /test/jeecgDemo/demo3,/test/jeecgDemo/redisDemo/**,/category/**,/visual/**,/map/**,/jmreport/bigscreen2/**
  #阿里云oss存储和大鱼短信秘钥配置
  oss:
    accessKey: ??
    secretKey: ??
    endpoint: oss-cn-beijing.aliyuncs.com
    bucketName: jeecgdev
    staticDomain: https://static.jeecg.com
  # ElasticSearch 设置
  elasticsearch:
    cluster-name: jeecg-ES
    cluster-nodes: 81.70.47.128:9200
    check-enabled: false
  # 表单设计器配置
  desform:
    # 主题颜色(仅支持 16进制颜色代码)
    theme-color: "#1890ff"
    # 文件、图片上传方式,可选项:qiniu(七牛云)、system(跟随系统配置)
    upload-type: system
    map:
      # 配置百度地图的AK,申请地址:https://lbs.baidu.com/apiconsole/key?application=key#/home
      baidu: ??
  # 在线预览文件服务器地址配置
  file-view-domain: http://127.0.0.1:8012
  # minio文件上传
  minio:
    minio_url: http://minio.jeecg.com
    minio_name: ??
    minio_pass: ??
    bucketName: ??
  #大屏报表参数设置
  jmreport:
    mode: prod
    #数据字典是否进行saas数据隔离,自己看自己的字典
    saas: false
    #是否需要校验token
    is_verify_token: false
    #必须校验方法
    verify_methods: remove,delete,save,add,update
  #Wps在线文档
  wps:
    domain: https://wwo.wps.cn/office/
    appid: ??
    appsecret: ??
  #xxl-job配置
  xxljob:
    enabled: false
    adminAddresses: http://127.0.0.1:9080/xxl-job-admin  # 调度中心部署跟地址 [选填]:如调度中心集群部署存在多个地址则用逗号分隔。执行器将会使用该地址进行"执行器心跳注册"和"任务结果回调";为空则关闭自动注册;
    appname: ${spring.application.name}  #执行器AppName,选填,执行器心跳注册分组依据,为空则关闭自动注册
    accessToken: ''  #执行器通讯Token,选填,非空时启用
    address: 127.0.0.1:30007  #执行器注册,优先使用该配置作为注册地址
    ip: 127.0.0.1 #执行器IP,默认为空表示自动获取IP,多网卡时可手动设置指定IP,该IP不会绑定Host仅作为通讯实用;地址信息用于 "执行器注册" 和 "调度中心请求并触发任务";
    port: 30007  #执行器端口号,小于等于0则自动获取;默认端口为9999,单机部署多个执行器时,注意要配置不同执行器端口;
    logPath: logs/jeecg/job/jobhandler/  #执行器运行日志文件存储磁盘路径
    logRetentionDays: 30  #执行器日志文件保存天数,选填,过期自动清理,限制值大于3时生效,否则,如-1,关闭自动清理功能
  route:  #配置所有服务的路由转发规则和路径以及标识
    config:
      data-id: jeecg-gateway-router
      group: DEFAULT_GROUP
      #自定义路由配置 yml nacos database
      data-type: database
  #分布式锁配置
  redisson:
    address: 127.0.0.1:6379
    password:
    type: STANDALONE
    enabled: true
#Mybatis输出sql日志
logging:
  level:
    org.jeecg.modules.system.mapper: info
#cas单点登录
cas:
  prefixUrl: http://cas.example.org:8443/cas
#swagger
knife4j:
  #开启增强配置
  enable: true
  #开启生产环境屏蔽
  production: false
  basic:
    enable: true
    username: jeecg
    password: jeecg1314
#第三方登录
justauth:
  enabled: true   #是否启用 JustAuth
  type:
    GITHUB:
      client-id: ??     #客户端id,对应各平台的appKey,必填
      client-secret: ??     #客户端Secret,对应各平台的appSecret,必填
      redirect-uri: http://sso.test.com:8080/jeecg-boot/sys/thirdLogin/github/callback       #登录成功后的回调地址,必填
    WECHAT_ENTERPRISE:
      client-id: ??
      client-secret: ??
      redirect-uri: http://sso.test.com:8080/jeecg-boot/sys/thirdLogin/wechat_enterprise/callback
      agent-id: ??     #企业微信,授权方的网页应用ID,当使用企业微信登录时, 该值必填
    DINGTALK:
      client-id: ??
      client-secret: ??
      redirect-uri: http://sso.test.com:8080/jeecg-boot/sys/thirdLogin/dingtalk/callback
    WECHAT_OPEN:
      client-id: ??
      client-secret: ??
      redirect-uri: http://sso.test.com:8080/jeecg-boot/sys/thirdLogin/wechat_open/callback
  cache:     #JustAuth缓存配置
    type: default   #缓存类型,可选选项:default/redis/custom;  default使用JustAuth默认的缓存实现,redis使用默认的redis缓存实现,custom用户自定义缓存实现
    prefix: 'demo::'    #缓存前缀,目前只对redis缓存生效,默认 JUSTAUTH::STATE::
    timeout: 1h   #超时时长,目前只对redis缓存生效,默认3分钟
#第三方APP对接
third-app:
  enabled: false  #是否启用third-app
  type:
    #企业微信
    WECHAT_ENTERPRISE:
      enabled: false
      #CORP_ID
      client-id: ??
      #SECRET
      client-secret: ??
      #自建应用id
      agent-id: ??
      #自建应用秘钥(新版企微需要配置)
      # agent-app-secret: ??
    #钉钉
    DINGTALK:
      enabled: false  #是否启用DINGTALK
      # appKey
      client-id: ??
      # appSecret
      client-secret: ??
      agent-id: ??
  • 5
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值