Maven的porfile與SpringBoot的profile結(jié)合使用案例詳解_第1頁(yè)
Maven的porfile與SpringBoot的profile結(jié)合使用案例詳解_第2頁(yè)
Maven的porfile與SpringBoot的profile結(jié)合使用案例詳解_第3頁(yè)
Maven的porfile與SpringBoot的profile結(jié)合使用案例詳解_第4頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第Maven的porfile與SpringBoot的profile結(jié)合使用案例詳解使用maven的profile功能,我們可以實(shí)現(xiàn)多環(huán)境配置文件的動(dòng)態(tài)切換,可參考我的上一篇博客。但隨著SpringBoot項(xiàng)目越來(lái)越火,越來(lái)越多人喜歡用SpringBoot的profile功能。但是用SpringBoot的profile功能時(shí),一般我們默認(rèn)激活的profile肯定是開發(fā)環(huán)境的profile。當(dāng)我們打成jar包后,如果在生產(chǎn)環(huán)境下運(yùn)行,就需要在運(yùn)行這個(gè)jar包的命令后面加個(gè)命令行參數(shù)來(lái)指定切換的profile。雖然這樣很方便,但是容易忘記加這個(gè)參數(shù)。我們可以通過(guò)maven的profile功能和SpringBoot的profile功能結(jié)合使用。效果為:當(dāng)maven打包時(shí)通過(guò)profile指定配置為test環(huán)境的配置,那么我們SpringBoot里面默認(rèn)激活的就是test環(huán)境的配置。這樣我們只需要打包時(shí)指定profile后,直接運(yùn)行jar就可以,不需要在命令行加參數(shù)了。這個(gè)效果就和我們普通web項(xiàng)目使用maven的profile的效果類似了。

(1)通過(guò)maven的profile功能,在打包的時(shí)候,通過(guò)-P指定maven激活某個(gè)pofile,這個(gè)profile里面配置了一個(gè)參數(shù)activatedProperties,不同的profile里面的這個(gè)參數(shù)的值不同

(2)SpringBoot的perties文件里面files.active填的值取上面maven的activatedProperties參數(shù)值。這樣能實(shí)現(xiàn)的效果為:

示例一:

maven打包命令為

mvncleanpackage-Ptest

那么perties里面的files.active值就是maven中id為test的profile的activatedProperties參數(shù)值

示例二:

maven打包命令為

mvncleanpackage-Pproduct

那么perties里面的files.active值就是maven中id為product的profile的activatedProperties參數(shù)值

(1)項(xiàng)目結(jié)構(gòu)介紹項(xiàng)目結(jié)構(gòu)如下圖所示,是個(gè)常見的SpringBoot項(xiàng)目結(jié)構(gòu),不同環(huán)境的propertis文件的后綴不同(見圖中紅框處)

(2)pom文件中配置maven的profilemaven的profile的配置見下面代碼注意:maven的profile中activatedProperties參數(shù)值需要和SpringBoot的不同環(huán)境Properties文件的后綴一樣。比如開發(fā)環(huán)境的Properties的文件名為perties,那么maven中develop的profile里面的activatedProperties參數(shù)值就應(yīng)該是develop

profiles

profile

!--開發(fā)--

iddevelop/id

activation

activeByDefaulttrue/activeByDefault

/activation

properties

activatedPropertiesdevelop/activatedProperties

/properties

/profile

profile

!--測(cè)試--

idfuy/id

properties

activatedPropertiesfuy/activatedProperties

/properties

/profile

profile

!--生產(chǎn)--

idproduction/id

properties

activatedPropertiesproduction/activatedProperties

/properties

/profile

/profiles

(3)perties中的配置

在perties文件中配置SpringBoot默認(rèn)激活的propertis文件。這時(shí)候files.active取上面maven的profile里面配置的activatedProperties的值,這個(gè)取值要用@符號(hào)來(lái)取。具體見下面代碼

files.active=@activatedProperties@

(4)如何打包打包時(shí)用mvncleanpackage-Pprofile的id如果不加-P參數(shù),那么默認(rèn)就是activeByDefaulttrue/activeByDefault所在的profile

(5)效果圖當(dāng)我們打包命令為mvncleanpackage-Pproduction時(shí),解壓后的jar包中perties配置文件中files.active的值自動(dòng)變成了production

(1)該方式優(yōu)點(diǎn):打包后不需要通過(guò)命令行參數(shù)來(lái)切換不同環(huán)境的配置文件,把指定環(huán)境的這一步放到了maven打包的命令上

(2)該方式其實(shí)是利用了maven的profile功能和SpringBoot的profile相結(jié)合使用

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論