SpringBoot默認支持properties(.properties)和YAML(.yml .yaml )兩種格式的配置文件
1.加載順序
若application.yml 和bootStrap.yml 在同一目錄下 :bootstrap.yml先加載 application.yml后加載
bootstrap.yml 用於應用程序上下文的引導階段。bootstrap.yml 由父Spring ApplicationContext加載。
父ApplicationContext 被加載到使用 application.yml 的之前。
2.配置區別
bootstrap.yml 和application.yml 都可以用來配置參數。
bootstrap.yml 用來程序引導時執行,應用於更加早期配置信息讀取. 可以理解成系統級別的一些參數配置,這些參數一般是不會變動的。一旦bootStrap.yml 被加載,則內容不會被覆蓋
application.yml 可以用來定義應用級別的, 應用程序特有配置信息,可以用來配置后續各個模塊中需使用的公共參數等.如果加載的application.yml的內容標簽與bootstrap的標簽一致,application 也不會覆蓋bootstrap, 而application.yml 里面的內容可以動態替換。
3. 典型的應用場景如下:
- 當使用 Spring Cloud Config Server 的時候,你應該在 bootstrap.yml 里面指定 spring.application.name 和 spring.cloud.config.server.git.uri
- 和一些加密/解密的信息