bootstrap和application區別:
- Spring Cloud 構建於 Spring Boot 之上,在 Spring Boot 中有兩種上下文,一種是 bootstrap,另外一種是 application,
- application 配置文件這個容易理解,主要用於 Spring Boot 項目的自動化配置。
- bootstrap 是應用程序的父上下文,也就是說 bootstrap 加載優先於 applicaton。
- bootstrap 主要用於從額外的資源來加載配置信息,還可以在本地外部配置文件中解密屬性。
- 這兩個上下文共用一個環境,它是任何Spring應用程序的外部屬性的來源。
- bootstrap 里面的屬性會優先加載,它們默認也不能被本地相同配置覆蓋。
-
boostrap 由父 ApplicationContext 加載,比 applicaton 優先加載
-
boostrap 里面的屬性不能被覆蓋
bootstrap 配置文件有以下幾個應用場景
-
使用 Spring Cloud Config 配置中心時,這時需要在 bootstrap 配置文件中添加連接到配置中心的配置屬性來加載外部配置中心的配置信息;
-
一些固定的不能被覆蓋的屬性
-
一些加密/解密的場景;