SpringBoot多环境配置

SpringBoot多环境配置

* 一个YAML文件实际上是一系列以 --- 线分割的文档,每个文档都被单独解析为一个平坦的(flattened)map。
* 如果一个YAML文档包含一个 spring.profiles 关键字,那profiles的值(以逗号分割的profiles列表)将被传入Spring的 Environment.acceptsProfiles() 方法,并且如果这些profiles的任何一个被激活,对应的文档被包含到最终的合并中

示例:
server:
port: 9000

spring:
profiles: development
server:
port: 9001

spring:
profiles: production
server:
port: 0

* 在这个示例中,默认的端口是9000,但如果Spring profile 'development'生效则该端口是9001,如果'production'生效则它是0。
* YAML文档以它们遇到的顺序合并(所以后面的值会覆盖前面的值)。
* 想要使用profiles文件完成同样的操作,可以使用 application-${profile}.properties 指定特殊的,profile相关的值。
  • 多环境配置图解:
    SpringBoot多环境配置_第1张图片
    1 application.yml文件的配置,active属性指定了使用哪个配置文件!!!
    SpringBoot多环境配置_第2张图片2.application-dev.yml 和application-prod.yml分别写相应环境需要的配置
    SpringBoot多环境配置_第3张图片注:也可以在yml文件中指定active属性为pom文件的属性形式,参考:https://www.jianshu.com/p/3b1ba2158f5b

你可能感兴趣的:(SpringBoot,spring,boot)