最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SpringBoot加載多個配置文件實現(xiàn)dev、product多環(huán)境切換的方法

 更新時間:2023年03月28日 09:11:06   作者:lans_g  
這篇文章主要介紹了SpringBoot加載多個配置文件實現(xiàn)dev、product多環(huán)境切換,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下

前言

在公司真正的開發(fā)和生產(chǎn)中,同一套程序會被部署到幾個不同的環(huán)境,比如:開發(fā)、測試、生產(chǎn)等。其中每個環(huán)境的數(shù)據(jù)庫地址、服務器端口等等配置都會不同,這樣通過多個配置文件就做到了隔離,多個環(huán)境之間不會相互影響。但是這么多配置文件,項目啟動時SpringBoot如何確定加載哪一個呢?

1.SpringBoot中實現(xiàn)多環(huán)境切換

在SpringBoot中,除了application.properties,我們新建的其他配置文件的文件名需要滿足application-{profile}.properties的格式,其中{profile}對應你的環(huán)境標識(不一定是.properties文件,也可以是.yml)其對應的{profile}值是開發(fā)者自定義的(如dev,product),在項目啟動的時候,只需要添加對應的參數(shù),springboot就會去讀取該配置文件了。具體profile的配置在application.properties文件中通過spring.profiles.active屬性來設置。接下來我們以一個例子來說明

(1)首先這里創(chuàng)建了dev、product、qa、stage和默認的application五個配置文件

請?zhí)砑訄D片描述

(2)加載配置文件時會先加載application.properties配置文件(這里一般存放一些公共配置),在該文件中配置要加載的環(huán)境的配置文件,這里有兩種配置方法。

例如要加載dev環(huán)境,可以在application.properties中這樣配置

spring.profiles.active=dev

或者使用@spring.profiles.active@,如下所示

spring.profiles.active=@spring.profiles.active@

如果使用這種方式則需要在pom.xml中添加以下內(nèi)容,其中activeByDefault標簽來指定項目啟動時默認加載的配置文件。

<profiles>
  <profile>
    <id>dev</id>
    <activation>
      <activeByDefault>true</activeByDefault>
    </activation>
    <properties>
      <spring.profiles.active>dev</spring.profiles.active>
    </properties>
  </profile>
  <profile>
    <id>qa</id>
    <properties>
      <spring.profiles.active>qa</spring.profiles.active>
    </properties>
  </profile>
  <profile>
    <id>stage</id>
    <properties>
      <spring.profiles.active>stage</spring.profiles.active>
    </properties>
  </profile>
  <profile>
    <id>product</id>
    <properties>
      <spring.profiles.active>product</spring.profiles.active>
    </properties>
  </profile>
</profiles>

當執(zhí)行mvn clean package -P dev 命令對項目進行打包發(fā)布時,打出來的jar/war包中的配置文件中@spring.profiles.active@ 會被替換成 dev。

注意@spring.profiles.active@ 要與pom中的標簽 <spring.profiles.active>> 保持一致,否則會報錯。

請?zhí)砑訄D片描述

2.SpringBoot中配置文件加載順序

配置文件的優(yōu)先級排序(以哪個配置文件為準):

1、項目根目錄下的config目錄?!緝?yōu)先級最高】
2、項目根目錄。
3、classpath下的config目錄。
4、classpath目錄(新建項目時application.properties默認所在位置)。【優(yōu)先級最低】

配置文件加載順序和優(yōu)先級順序相反,優(yōu)先級低的先加載,因為如果有重復的配置,先加載的配置文件會被覆蓋。

同一級目錄下,如果是application.yml,application.properties配置文件同時存在,會以application.properties配置文件為準,也就是說先加載.yml文件后加載.properties文件。

請?zhí)砑訄D片描述

優(yōu)先級順序:1->2->3->4->5。

文件加載順序:5->4->3->2->1。

到此這篇關(guān)于SpringBoot加載多個配置文件實現(xiàn)dev、product多環(huán)境切換的文章就介紹到這了,更多相關(guān)SpringBoot加載多個配置文件內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • SpringCloud微服務網(wǎng)關(guān)限流方式

    SpringCloud微服務網(wǎng)關(guān)限流方式

    這篇文章主要介紹了SpringCloud微服務網(wǎng)關(guān)限流方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-08-08
  • SpringBoot替換默認的tomcat服務器的方法

    SpringBoot替換默認的tomcat服務器的方法

    Tomcat是Apache基金下的一個輕量級的Servlet容器,支持Servlet和JSP,Tomcat具有Web服務器特有的功能,在SpringBoot框架中,我們使用最多的是Tomcat,這是SpringBoot默認的容器技術(shù),本文給大家介紹了Spring?Boot如何替換默認的tomcat服務器,需要的朋友可以參考下
    2024-08-08
  • Mybatis Criteria使用and和or進行聯(lián)合條件查詢的操作方法

    Mybatis Criteria使用and和or進行聯(lián)合條件查詢的操作方法

    這篇文章主要介紹了Mybatis Criteria的and和or進行聯(lián)合條件查詢的方法,本文通過例子給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-10-10
  • 在SpringBoot中配置日期格式化的方法詳解

    在SpringBoot中配置日期格式化的方法詳解

    通常情況下,發(fā)起一個 Http 請求,Spring Boot 會根據(jù)請求路徑映射到指定 Controller 上的某個方法的參數(shù)上,接著,Spring 會自動進行類型轉(zhuǎn)換,對于日期類型的參數(shù),Spring 默認是沒有配置如何將字符串轉(zhuǎn)換成日期類型的,本文將給大家介紹在SpringBoot中配置日期格式化的方法
    2023-10-10
  • java開放地址法和鏈地址法解決hash沖突的方法示例

    java開放地址法和鏈地址法解決hash沖突的方法示例

    這篇文章主要介紹了java開放地址法和鏈地址法解決hash沖突的方法示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-12-12
  • 這一次搞懂Spring代理創(chuàng)建及AOP鏈式調(diào)用過程操作

    這一次搞懂Spring代理創(chuàng)建及AOP鏈式調(diào)用過程操作

    這篇文章主要介紹了這一次搞懂Spring代理創(chuàng)建及AOP鏈式調(diào)用過程操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-08-08
  • Java設計模式之java訪問者模式詳解

    Java設計模式之java訪問者模式詳解

    這篇文章主要介紹了JAVA設計模式之訪問者模式,簡單說明了訪問者模式的原理,并結(jié)合實例分析了java訪問者模式的定義與用法,需要的朋友可以參考下
    2021-09-09
  • SpringBoot結(jié)合Redis實現(xiàn)緩存管理功能

    SpringBoot結(jié)合Redis實現(xiàn)緩存管理功能

    本篇文章主要介紹spring boot緩存管理機制及相關(guān)概念,以及如何結(jié)合Redis實現(xiàn)緩存管理,文中通過代碼示例給大家介紹的非常詳細,具有一定的參考價值,需要的朋友可以參考下
    2024-01-01
  • Java?swing實現(xiàn)應用程序?qū)?shù)據(jù)庫的訪問問題

    Java?swing實現(xiàn)應用程序?qū)?shù)據(jù)庫的訪問問題

    這篇文章主要介紹了Java?swing實現(xiàn)應用程序?qū)?shù)據(jù)庫的訪問,本次實驗需要做一個GUI界面和一個連接查詢功能,在論壇上借鑒了其他大佬獲取網(wǎng)站內(nèi)容的部分代碼,然后自己做了一個及其簡陋的swing界面,算是把這個實驗完成了,需要的朋友可以參考下
    2022-09-09
  • Java實現(xiàn)簡單的遞歸操作方法實例

    Java實現(xiàn)簡單的遞歸操作方法實例

    這篇文章主要給大家介紹了關(guān)于Java實現(xiàn)簡單的遞歸操作的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-02-02

最新評論

乌拉特后旗| 虹口区| 敖汉旗| 普安县| 洛南县| 文昌市| 乌兰县| 新竹市| 新安县| 榕江县| 甘泉县| 南和县| 正镶白旗| 青神县| 阿勒泰市| 河间市| 寻乌县| 镇远县| 五莲县| 印江| 本溪| 芒康县| 古田县| 桃源县| 凉城县| 瑞昌市| 新闻| 寻甸| 公主岭市| 吐鲁番市| 二连浩特市| 曲松县| 林州市| 荥阳市| 进贤县| 且末县| 城市| 黑龙江省| 辽阳市| 辛集市| 岳阳县|