springboot一键application.yml配置文件实践

 更新时间:2026年02月24日 08:35:03   作者:月华白昼  
application-dev.yml文件是Spring Boot项目中用于定义开发环境配置的一个YAML格式文件,它包含了数据库连接、服务器端口、日志级别、缓存配置等开发过程中常用的设置,通过这个文件,开发者可以在不同的环境中(如开发、测试、生产)切换配置,而无需修改代码

springboot application.yml配置文件

server :
  port : 8080
  ##项目名字配置
  #servlet :
  #  context-path : /demo
  tomcat :
    uri-encoding : UTF-8
    #xx 报错修改的地方
    max-connections: 200000
    max-http-form-post-size: 9000000
    threads:
      max: 128
      min-spare: 5
spring :
  # 环境 dev|test|prod
  profiles :
    active : dev
    #引入其他配置文件,例如ftpHX 未配置文件application-ftpHX.yml
    #include: ftpHX,ftpCloud
  servlet:
    multipart:
      #设置总上传的数据大小
      max-request-size: 100MB
      #单个文件大小
      maxFileSize : 30MB
        #xx 报错修改的地方
    max-connections: 200000
    max-http-post-size: 9000000
  #热部署模块
  devtools:
    restart:
      #热部署开关
      enabled: true
      #指定热部署的目录
      additional-paths: src/main/java
      #指定目录不更新
      exclude: test/**
  mvc:   #静态文件
    static-path-pattern : /static/**
    pathmatch:
      matching-strategy: ant_path_matcher
  #模板引擎
  thymeleaf:
    model: HTML5
    prefix: classpath:/templates/
    suffix: .html
    #指定编码
    encoding: utf-8
    #禁用缓存 默认false
    cache: false
  jackson:
    time-zone: GMT+8
    date-format: yyyy-MM-dd HH:mm:ss
  redis:
    ssl: false
    database: 0
    host: 127.0.0.1
    port: 6379
    password: 
    timeout: 1000
    lettuce:
      pool:
        max-active: 200
        max-wait: -1
        max-idle: 10
        min-idle: 0
#mybatis:
#  #配置mapper的扫描,找到所有的mapper.xml映射文件
#  mapperLocations : classpath*:mybatis/*/*.xml
#  #mybatis提供三种sql执行器,分别是SIMPLE、REUSE、BATCH。
#  executor-type : reuse
#  #搜索指定包别名
#  typeAliasesPackage : com.*.model
#  #该配置项就是指将带有下划线的表字段映射为驼峰格式的实体类属性。
#  configuration :
#    map-underscore-to-camel-case : true


# 控制台输出sql、下划线转驼峰
mybatis-plus:
  mapper-locations: classpath:/mybatis-plus/*.xml
  typeAliasesPackage: com.fc.pilotSchool.model
  # 控制台输出sql、下划线转驼峰
  configuration:
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
    map-underscore-to-camel-case: true

#pagehelper分页插件
pagehelper:
    helperDialect: mysql
    reasonable: true
    supportMethodsArguments: true
    params: count=countSql
oss:
  enable: true
  info: true
  path-style-access: false  #使用云OSS 需要关闭
  endpoint: http://127.0.0.1:9000 #对应上图 ③ 处配置
  access-key: minioadmin  # 上文创建的AK
  secret-key: minioadmin # 上文创建的SK
  bucket-name: v2-cloud  # 上文创建的桶名称

application-dev.yml文件

#dev环境  mysql7.0
spring:
  datasource:
    type: com.alibaba.druid.pool.DruidDataSource
    driverClassName: com.mysql.cj.jdbc.Driver
    #druid连接池配置
    druid:
     #主库数据源
     master:
        url: jdbc:mysql://xxx.xxx.xxx.xxx:3306/xxxx?useUnicode=true&characterEncoding=UTF-8&useSSL=false&autoReconnect=true&failOverReadOnly=false&serverTimezone=GMT
        username: xxxxx
        password: xxxxx
     #备数据源 #关闭
     slave:
        enabled: false
        url: jdbc:mysql://localhost:3306/xxxx?useUnicode=true&characterEncoding=UTF-8&serverTimezone=GMT&autoReconnect=true&useSSL=false
        username: xxxx
        password: xxxx
        #配置初始化连接数大小
     initial-size: 10
     # 最大连接数
     maxActive: 50
     #最小连接数
     minIdle: 10
     #获取连接等待超时时间
     maxWait: 5000
     poolPreparedStatements: true #是否缓存preparedStatement,也就是PSCache。PSCache对支持游标的数据库性能提升巨大,比如说oracle。在mysql下建议关闭。
     maxPoolPreparedStatementPerConnection-size: 20
     validationQuery: SELECT 1 FROM DUAL
     validationQueryTimeout: 20000
     testOnBorrow: false #申请连接时执行validationQuery检测连接是否有效,做了这个配置会降低性能。
     testOnReturn: false #归还连接时执行validationQuery检测连接是否有效,做了这个配置会降低性能。
     testWhileIdle: true #建议配置为true,不影响性能,并且保证安全性。申请连接的时候检测,如果空闲时间大于timeBetweenEvictionRunsMillis,执行validationQuery检测连接是否有效。
     timeBetweenEvictionRunsMillis: 60000 #配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
     minEvictableIdleTimeMillis: 300000  #一个连接在池中最小生存的时间,单位是毫秒
     maxEvictableIdleTimeMillis: 900000  # 配置一个连接在池中最大生存的时间,单位是毫秒
     #StatViewServlet配置。(因为暴露的监控信息比较敏感,支持密码加密和访问ip限定)
     webStatFilter:
      enabled: true
     statViewServlet:
      enabled: true
      urlPattern: /druid/*
      #可以增加访问账号密码【去掉注释就可以】
      #login-username: admin
      #login-password: admin
     filter:
      stat:
        enabled: true
        # 慢SQL记录
        log-slow-sql: true
        slow-sql-millis: 1000
        merge-sql: true
      wall:
        config:
          multi-statement-allow: true

#mysql 8.0

#spring:
#  datasource:
#    type: com.alibaba.druid.pool.DruidDataSource
#    driverClassName: com.mysql.cj.jdbc.Driver
#    #druid连接池配置
#    druid:
#     # 主库数据源
#     master:
#        url: jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8&serverTimezone=GMT&autoReconnect=true&useSSL=false
#        username: root
#        password: root
#        #树熊数据源
#     slave:
#        enabled : false
#        url: jdbc:mysql://localhost:3306/test2?useUnicode=true&characterEncoding=UTF-8&serverTimezone=GMT&autoReconnect=true&useSSL=false
#        username: root
#        password: root
#        #配置初始化连接数大小
#     initial-size: 10
#     # 最大连接数
#     max-active: 50
#     #最小连接数
#     min-idle: 10
#     #获取连接等待超时时间
#     max-wait: 5000
#     pool-prepared-statements: true #是否缓存preparedStatement,也就是PSCache。PSCache对支持游标的数据库性能提升巨大,比如说oracle。在mysql下建议关闭。
#     max-pool-prepared-statement-per-connection-size: 20
#     validation-query: SELECT 1 FROM DUAL
#     validation-query-timeout: 20000
#     test-on-borrow: false #申请连接时执行validationQuery检测连接是否有效,做了这个配置会降低性能。
#     test-on-return: false #归还连接时执行validationQuery检测连接是否有效,做了这个配置会降低性能。
#     test-while-idle: true #建议配置为true,不影响性能,并且保证安全性。申请连接的时候检测,如果空闲时间大于timeBetweenEvictionRunsMillis,执行validationQuery检测连接是否有效。
#     time-between-eviction-runs-millis: 60000 #配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
#     min-evictable-idle-time-millis: 300000  #一个连接在池中最小生存的时间,单位是毫秒
#     #StatViewServlet配置。(因为暴露的监控信息比较敏感,支持密码加密和访问ip限定)
#     stat-view-servlet:
#      enabled: true
#      url-pattern: /druid/*
#      #可以增加访问账号密码【去掉注释就可以】
#      #login-username: admin
#      #login-password: admin
#     filter:
#      stat:
#        log-slow-sql: true
#        slow-sql-millis: 1000
#        merge-sql: true
#      wall:
#        config:
#          multi-statement-allow: true

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Java超详细讲解SpringMVC如何获取请求数据

    Java超详细讲解SpringMVC如何获取请求数据

    Spring MVC 是 Spring 提供的一个基于 MVC 设计模式的轻量级 Web 开发框架,本质上相当于 Servlet,Spring MVC 角色划分清晰,分工明细,本章来讲解SpringMVC如何获取请求数据
    2022-04-04
  • IDEA中Git版本回退的两种实现方案

    IDEA中Git版本回退的两种实现方案

    作为开发者,代码版本回退是日常高频操作,IntelliJ IDEA集成了强大的Git工具链,但面对reset和revert两种核心回退方案,许多开发者仍存在选择困惑,本文将解析Reset与Revert两种方案的操作细节及避坑指南,需要的朋友可以参考下
    2025-03-03
  • 实例解析观察者模式及其在Java设计模式开发中的运用

    实例解析观察者模式及其在Java设计模式开发中的运用

    观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象,这个主题对象在状态上发生变化时,会通知所有观察者对象,使它们能够自动更新自己.下面就以实例解析观察者模式及其在Java设计模式开发中的运用
    2016-05-05
  • java使用Memcached简单教程

    java使用Memcached简单教程

    本文主要记录Memcached的一些基本使用和简单的Monitor,大家参考使用吧
    2013-12-12
  • Spring IOC容器基于XML外部属性文件的Bean管理

    Spring IOC容器基于XML外部属性文件的Bean管理

    这篇文章主要为大家介绍了Spring IOC容器Bean管理XML外部属性文件,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-05-05
  • Spring Boot 如何解决富文本上传图片跨域问题

    Spring Boot 如何解决富文本上传图片跨域问题

    这篇文章主要介绍了Spring Boot 如何解决富文本上传图片跨域问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-09-09
  • Eclipse中改变默认的workspace的方法及说明详解

    Eclipse中改变默认的workspace的方法及说明详解

    eclipse中改变默然的workspace的方法有哪几种呢?接下来脚本之家小编给大家介绍Eclipse中改变默认的workspace的方法及说明,对eclipse改变workspace相关知识感兴趣的朋友一起学习吧
    2016-04-04
  • servlet实现文件下载的步骤及说明详解

    servlet实现文件下载的步骤及说明详解

    这篇文章主要为大家详细介绍了servlet实现文件下载的步骤及说明,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-09-09
  • 从零到掌握Spring Boot Validation 接口校验的详细过程

    从零到掌握Spring Boot Validation 接口校验的详细过程

    本文详细介绍了SpringBoot的Validation接口校验机制,包括其核心功能、常用注解、自定义校验、以及实际应用场景,通过注解定义数据校验规则,感兴趣的朋友跟随小编一起看看吧
    2025-02-02
  • SpringBoot实现文件压缩处理详解

    SpringBoot实现文件压缩处理详解

    在工作我们经常会出现有多个文件,为了节省资源会将多个文件放在一起进行压缩处理,本文将使用SpringBoot实现文件压缩处理,感兴趣的可以了解下
    2024-11-11

最新评论