您好,登錄后才能下訂單哦!
本篇內(nèi)容主要講解“SpringBoot之bootstrap和application的區(qū)別是什么”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“SpringBoot之bootstrap和application的區(qū)別是什么”吧!
bootstrap和application都是SpringBoot項(xiàng)目中的配置文件,他們的區(qū)別主要有以下的幾個(gè)方面
bootstrap配置文件是比application配置文件優(yōu)先加載的,因?yàn)閎ootstrap是由spring父上下文加載,而application是由子上下文加載
bootstrap加載的配置信息是不能被application的相同配置覆蓋的,如果兩個(gè)配置文件同時(shí)存在,也是以bootstrap為主
1.配置一些固定的,不能被覆蓋的屬性.用于一些系統(tǒng)級(jí)別的參數(shù)配置
本地的配置文件是默認(rèn)不能覆蓋遠(yuǎn)程的配置的
2.一些需要加密/解密的場(chǎng)景
3.當(dāng)你使用了Spring Cloud Config配置中心時(shí),這時(shí)需要在boostrap配置文件中添加連接到配置中心的配置屬性來加載外部配置中心的配置信息,專業(yè)翻譯如下
application常見應(yīng)用場(chǎng)景
1.常用于SpringBoot項(xiàng)目的自動(dòng)化配置
2.用于一些應(yīng)用級(jí)別的參數(shù)配置
在大部分情況下不用區(qū)分這兩種情況,只需要使用application即可,效果基本是一致的
bootstrap.yml 先于 application.yml。
bootstrap.yml 用于 ApplicationContext 引導(dǎo)階段。由父 Spring ApplicationContext 加載。定義系統(tǒng)級(jí)別的參數(shù)配置,這些參數(shù)一般不會(huì)變動(dòng)。
application.yml 用來定義應(yīng)用級(jí)別的參數(shù)配置。搭配 spring-cloud-config 使用時(shí) application.yml 定義的參數(shù)可以實(shí)現(xiàn)動(dòng)態(tài)替換。
application.yml 會(huì)覆蓋 bootstrap.yml 的參數(shù)配置。
由里向外,外層覆蓋里層。
命令行參數(shù) > 操作系統(tǒng)環(huán)境變量 > 應(yīng)用外的配置文件 > 應(yīng)用內(nèi)的配置文件
配置中心 > 命令行參數(shù) > 本地application.yml > 本地bootstrap.yml
配置允許覆蓋:
spring: cloud: config: allowOverride: true overrideNone: true overrideSystemProperties: false
到此,相信大家對(duì)“SpringBoot之bootstrap和application的區(qū)別是什么”有了更深的了解,不妨來實(shí)際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。