Spring Boot 支持的配置文件类型

  1. yaml 格式的配置文件
  2. properties 格式的配置文件

application和bootstrap的区别

  • bootstrap 优先级高于 application,优先被加载
  • bootstrap 用于应用程序上下文的引导阶段,由父 Application Context 加载
  • bootstrap 是系统级别的配置(不变的参数),application 是应用级别的配置

不同位置的配置文件加载优先级

  1. file:./config/(项目根路径下的config)
  2. file:./(项目根路径下)
  3. classpath:/config/(项目 resources/config 下)
  4. classpath: /(项目 resources 目录下)

不同环境下的配置文件

application.yml 配置如下,这里存储一些通用的配置

  1. spring:
  2. application:
  3. name: spring-boot-study
  4. # 指定当前使用的配置为开发环境的配置
  5. # 即会优先使用application-dev.yml中的特定配置
  6. profiles:
  7. active: dev
  8. server:
  9. port: 8000

application-dev.yml 配置如下,这里存储线上环境的特定配置

  1. spring:
  2. application:
  3. name: spring-boot-study
  4. server:
  5. port: 8001

注意

  1. 高优先级覆盖低优先级相同配置,若存在多个配置文件则会互补。
  2. 默认 Spring Boot 的配置文件的优先级是最低的,会被其他更高优先级的配置文件覆盖。