yml與properties
其實yml和properties文件是一樣的原理,且一個項目上要么yml或者properties,二選一的存在。
推薦使用yml,更簡潔。
bootstrap與application
1.加載順序
這里主要是說明application和bootstrap的加載順序。
bootstrap.yml(bootstrap.properties)先加載
application.yml(application.properties)后加載
bootstrap.yml 用於應用程序上下文的引導階段。
bootstrap.yml 由父Spring ApplicationContext加載。
父ApplicationContext 被加載到使用 application.yml 的之前。
2.配置區別
bootstrap.yml 和application.yml 都可以用來配置參數。
bootstrap.yml 可以理解成系統級別的一些參數配置,這些參數一般是不會變動的。
application.yml 可以用來定義應用級別的,如果搭配 spring-cloud-config 使用 application.yml 里面定義的文件可以實現動態替換。
使用Spring Cloud Config Server時,應在 bootstrap.yml 中指定:
spring.application.name
spring.cloud.config.server.git.uri
一些加密/解密信息
實例:
bootstrap.yml
spring: application: name: service-a cloud: config: uri: http://127.0.0.1:8888 fail-fast: true username: user password: ${CONFIG_SERVER_PASSWORD:password} retry: initial-interval: 2000 max-interval: 10000 multiplier: 2 max-attempts: 10
當使用Spring Cloud時,通常從服務器加載“real”配置數據。為了獲取URL(和其他連接配置,如密碼等),您需要一個較早的或“bootstrap”配置。因此,您將配置服務器屬性放在bootstrap.yml中,該屬性用於加載實際配置數據(通常覆蓋application.yml [如果存在]中的內容)。
當然,在一些情況上不用那么區分這兩個文件,你只需要使用application文件即可,把全部選項都寫在這里,效果基本是一致的,在不考慮上面的加載順序覆蓋的問題上。
————————————————
版權聲明:本文為CSDN博主「jeikerxiao」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/jeikerxiao/article/details/78914132