javascript
SpringBoot 配置文件bootstrap和application的区别
目錄
- 一、SpringBoot配置文件
- 二、bootstrap和application區別
- 三、bootstrap和application的應用場景
一、SpringBoot配置文件
-
bootstrap(.yml 或者 .properties)
-
application(.yml 或者 .properties)
二、bootstrap和application區別
特意去翻了下 Spring Boot 的官方文檔,沒有找到關于這兩種文件的具體定義,然后再翻了下 Spring Cloud 的官方文檔找到了它們的區別。
https://cloud.spring.io/spring-cloud-static/Greenwich.SR1/single/spring-cloud.html#_the_bootstrap_application_context
Spring Cloud 構建于 Spring Boot 之上,在 Spring Boot 中有兩種上下文,一種是 bootstrap,另外一種是 application,bootstrap 是應用程序的父上下文,也就是說 bootstrap 加載優先于 applicaton。
bootstrap 主要用于從額外的資源來加載配置信息,還可以在本地外部配置文件中解密屬性。這兩個上下文共用一個環境,它是任何Spring應用程序的外部屬性的來源。bootstrap 里面的屬性會優先加載,它們默認也不能被本地相同配置覆蓋。
對比 application 配置文件,bootstrap 配置文件具有以下幾個特性。
-
boostrap 由父 ApplicationContext 加載,比 applicaton 優先加載;
-
boostrap 里面的屬性不能被覆蓋;
三、bootstrap和application的應用場景
application
- 主要用于spring boot 項目的自動化配置;
bootstrap
-
a、使用 spring Cloud config 配置中心時,這時需要在 bootstrap 配置文件中添加連接到配置中心的配置屬性來加載外部配置中心的配置信息;
-
b、一些固定的不能被覆蓋的配置;
-
c、一些加密/解密的場景;
總結
以上是生活随笔為你收集整理的SpringBoot 配置文件bootstrap和application的区别的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: etf基金怎么买卖怎么操作 etf基金如
- 下一篇: SpringBoot 集成 Nacos