您好,登錄后才能下訂單哦!
這篇文章主要介紹了Springboot多環(huán)境開(kāi)發(fā)的示例分析,具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
Springboot在不同的階段運(yùn)行,所使用的環(huán)境可能不一樣
比如在開(kāi)發(fā)階段、測(cè)試階段、生產(chǎn)階段,應(yīng)用階段
可能這些階段Springboot項(xiàng)目運(yùn)行的環(huán)境都不同,所以可以提前設(shè)置多種環(huán)境,根據(jù)場(chǎng)景的不同進(jìn)行選擇使用
方法1:
在yml配置文件中提前寫(xiě)好多種配置,然后選擇調(diào)用哪個(gè)
方法2:
這個(gè)方法也適用于后綴名為prperties的配置文件
每種環(huán)境設(shè)置一個(gè)配置文件,然后再寫(xiě)一個(gè)主配置文件,在主配置文件中設(shè)置調(diào)用哪個(gè)環(huán)境,并且寫(xiě)公共配置
就等于將方法一中的每個(gè)部分單獨(dú)寫(xiě)成一個(gè)文件。
這里需要注意一點(diǎn),這里的環(huán)境命名方式不同了
這里的命名方式是:application-環(huán)境的名稱(chēng)
,然后再這些環(huán)境配置的文件里面就不需要在通過(guò)spring.profiles來(lái)設(shè)置名字了,當(dāng)然如果不想按照這種命名方式來(lái)命名,則需要通過(guò)spring.profiles來(lái)設(shè)置名字
主配置文件的名稱(chēng)就起application,在主文件中,通過(guò)
來(lái)調(diào)用對(duì)應(yīng)的環(huán)境
項(xiàng)目開(kāi)發(fā)的時(shí)候,對(duì)于不同的模塊設(shè)置不同的配置文件,比如持久層,可以設(shè)置一個(gè)名為application-devDB
的配置文件,MVC層設(shè)置一個(gè)名為application-devMVC
的配置文件
然后在主配置中對(duì)其他的環(huán)境進(jìn)行調(diào)用管理,include
可以在激活指定環(huán)境的情況下,同時(shí)對(duì)多個(gè)環(huán)境進(jìn)行加載使其生效,多個(gè)環(huán)境間使用逗號(hào)分隔
而且,如果多個(gè)環(huán)境中有相同的配置,則后加載的環(huán)境會(huì)覆蓋前面的,加載的順序:先按照include中的環(huán)境一個(gè)一個(gè)的加載、最后加載active中的環(huán)境
但是對(duì)于同時(shí)對(duì)多個(gè)環(huán)境進(jìn)行加載使其生效這個(gè)功能,include這個(gè)方法現(xiàn)在已經(jīng)不是主流,我們更多的是使用group
對(duì)不同名字的配置文件進(jìn)行分組,比如application-dev首字母大寫(xiě)的字符串
可以劃分為dev組的,如上圖
然后用active來(lái)決定調(diào)用哪一組的配置文件
spring-boot基于maven坐標(biāo)的控制工作的
所以為了防止maven與spring-boot互相的配置沖突,我們應(yīng)該在maven中配置,然后讓sping-boot去讀取
當(dāng)Maven與SpringBoot 同時(shí)對(duì)多環(huán)境進(jìn)行控制時(shí),以Mavn為主,SpringBoot使用@. . @占位符讀取Maven對(duì)應(yīng)的配置屬性值
首先,有這么幾個(gè)配置文件
第一步:在maven的pom文件中配置對(duì)應(yīng)的多環(huán)境開(kāi)發(fā):
第二步:在springboot中引用
idea的一個(gè)小BUG
基于SpringBoot讀取Maven配置屬性的前提下,如果在Idea下測(cè)試,工程時(shí)pom.xml每次更新需要手動(dòng)compile方可生效
感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“Springboot多環(huán)境開(kāi)發(fā)的示例分析”這篇文章對(duì)大家有幫助,同時(shí)也希望大家多多支持億速云,關(guān)注億速云行業(yè)資訊頻道,更多相關(guān)知識(shí)等著你來(lái)學(xué)習(xí)!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。