SpringBoot激活profiles的幾種方式
多環(huán)境是最常見的配置隔離方式之一,可以根據(jù)不同的運行環(huán)境提供不同的配置信息來應(yīng)對不同的業(yè)務(wù)場景,在SpringBoot內(nèi)支持了多種配置隔離的方式,可以激活單個或者多個配置文件。
激活Profiles的方式
激活的profiles要在項目內(nèi)創(chuàng)建對應(yīng)的配置文件,格式為application-{profile}.yml。
命令行方式
命令行方式是一種外部配置的方式,在執(zhí)行java -jar命令時可以通過--spring.profiles.active=test的方式進行激活指定的profiles列表。
使用方式如下所示:
java -jar order-service-v1.0.jar --spring.profiles.active=dev &> order-service.log &
系統(tǒng)變量方式
Mac/Linux系統(tǒng)配置環(huán)境變量
編輯環(huán)境變量配置文件/etc/profile,添加名為SPRING_PROFILES_ACTIVE的環(huán)境變量,如下所示:
# spring 環(huán)境激活 export SPRING_PROFILES_ACTIVE=dev
Windows系統(tǒng)配置環(huán)境變量
環(huán)境變量的配置方式請參考Java環(huán)境變量配置,新建一個名為SPRING_PROFILES_ACTIVE的系統(tǒng)環(huán)境變量,設(shè)置變量的值為dev即可。
系統(tǒng)變量的方式適用于系統(tǒng)下所部署統(tǒng)一環(huán)境的SpringBoot應(yīng)用程序,如統(tǒng)一部署的都是prod環(huán)境的應(yīng)用程序。
Java系統(tǒng)屬性方式
Java系統(tǒng)屬性方式也是一種外部配置的方式,在執(zhí)行java -jar命令時可以通過-Dspring.profiles.active=test的方式進行激活指定的profiles列表。
使用方式如下所示:
java -Dspring.profiles.active=dev -jar order-service-v1.0.jar &> order-service.log &
注意:-D方式設(shè)置Java系統(tǒng)屬性要在-jar前定義。
配置文件方式
配置文件方式是最常用的方式,不過靈活性不強,局限性比較大,不建議使用這種方式來激活配置文件。
我們只需要在application.yml配置文件添加配置即可,使用方式如下所示:
spring: profiles: # 激活profiles active: dev
優(yōu)先級
命令行方式 > Java系統(tǒng)屬性方式 > 系統(tǒng)變量方式 > 配置文件方式
經(jīng)過測試命令行方式的優(yōu)先級最高,而內(nèi)部配置文件方式則是最低的。
激活多個profile
如果需要激活多個profile可以使用逗號隔開,如:--spring.profiles.active=dev,test
敲黑板劃重點
每一個應(yīng)用項目都會用到大量的配置文件或者外部配置中心,而配置信息的激活是必不可少的一步,尤為重要。
建議大家使用系統(tǒng)環(huán)境變量的方式來激活指定profile的配置,這種方式比較簡單,系統(tǒng)全局都可以使用(注意:系統(tǒng)全局代表著該系統(tǒng)下所運行的全部SpringBoot應(yīng)用都會采用該配置),當(dāng)然也可以采用優(yōu)先級替換的規(guī)則進行單獨指定。
總結(jié)
以上所述是小編給大家介紹的SpringBoot激活profiles的幾種方式,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!
相關(guān)文章
微信小程序 springboot后臺如何獲取用戶的openid
這篇文章主要介紹了微信小程序 springboot后臺如何獲取用戶的openid,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2019-09-09IDEA利用自帶Axis工具和wsdl文件反向生成服務(wù)端客戶端代碼圖文詳解
這篇文章主要介紹了IDEA利用自帶Axis工具和wsdl文件反向生成服務(wù)端客戶端代碼詳細流程,在這里小編使用的是idea2021.1最新開發(fā)工具,本文通過圖文并茂的形式給大家介紹的非常詳細,需要的朋友可以參考下2021-05-05Java 下數(shù)據(jù)業(yè)務(wù)邏輯開發(fā)技術(shù) JOOQ 和 SPL
這篇文章主要為大家介紹了Java 下數(shù)據(jù)業(yè)務(wù)邏輯開發(fā)技術(shù) JOOQ 和 SPL詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-09-09SpringBoot集成ffmpeg實現(xiàn)視頻轉(zhuǎn)碼播放示例詳解
這篇文章主要為大家介紹了SpringBoot集成ffmpeg實現(xiàn)視頻轉(zhuǎn)碼播放示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-07-07玩轉(zhuǎn)SpringBoot中的那些連接池(小結(jié))
這篇文章主要介紹了玩轉(zhuǎn)SpringBoot中的那些連接池(小結(jié)),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12