欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Spring Boot 指定外部啟動(dòng)配置文件詳解

 更新時(shí)間:2021年09月09日 10:01:36   作者:ccor2002  
在springboot項(xiàng)目中,也可以使用yml類型的配置文件代替properties文件。接下來(lái)通過(guò)本文給大家分享Springboot配置文件的使用,感興趣的朋友一起看看吧

默認(rèn)的打包spring boot項(xiàng)目會(huì)把配置文件打到j(luò)ar包中,有時(shí)候在測(cè)試時(shí)需要想修改某些配置項(xiàng)。這時(shí)除了可以用啟動(dòng)參數(shù)覆蓋配置項(xiàng)以外,還可以指定外部的配置文件覆蓋已有配置文件。在需要修改較多配置參數(shù)的時(shí)候會(huì)很方便。

使用spring boot默認(rèn)的配置文件路徑

默認(rèn)的查找路徑如下:

1.file:./config/

2.file:./

3.classpath:/config/

4.classpath:/

會(huì)依次從1-4的位置查找加載application.yml或者是application.properties(這個(gè)配置文件名可以通過(guò)spring.config.name修改),比如./config/application.yml會(huì)覆蓋./application.yml及classpath:/config/applicaiton.yml中的同名配置。

即最簡(jiǎn)單的方法是放置一個(gè)配置文件到j(luò)ar包同層目錄下,或是同層目錄下的config子目錄下,啟動(dòng)jar包即可加載配置文件實(shí)現(xiàn)配置項(xiàng)的覆蓋。

指定外部的配置文件

當(dāng)然可以通過(guò)修改啟動(dòng)參數(shù)spring.config.location的值來(lái)指定加載目錄或是加載文件:

$ java -jar myproject.jar --spring.config.location=classpath:/default.properties,classpath:/override.properties

這樣不會(huì)去默認(rèn)位置加載配置文件,而是加載類路徑下的default.propertiesoverride.properties文件,override.properties中的同名配置會(huì)覆蓋default.properties的。

如果指定的路徑是以/結(jié)尾則是目錄配置,會(huì)去目錄下找配置文件。這個(gè)參數(shù)默認(rèn)的配置為:

classpath:/,classpath:/config/,file:./,file:./config/

可以對(duì)照上文中的默認(rèn)查找路徑,是從右到左覆蓋的。

特定配置

在開(kāi)發(fā)、測(cè)試、發(fā)布過(guò)程中,這三個(gè)場(chǎng)景比較固定,通常會(huì)定義三份不同的配置application-{profile}.yml,在使用時(shí)通過(guò)profile參數(shù)來(lái)切換。

applicaiton-dev.yml
applicaiton-test.yml
applicaiton-prd.yml

啟動(dòng)時(shí),通過(guò)指定spring.profiles.active參數(shù)來(lái)切換配置文件

java -jar myproject.jar --spring.profiles.active=test

當(dāng)然指定特定配置也滿足配置文件覆蓋的規(guī)則,但是一旦指定的spring.config.location不是目錄,而是具體文件時(shí),這個(gè)參數(shù)切換就失去作用了。

具體更多的擴(kuò)展配置可以參考 spring boot的官方文檔Externalized Configuration章節(jié)。

總結(jié)

本篇文章就到這里了,希望能夠給你帶來(lái)幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!

相關(guān)文章

  • java編寫汽車租賃系統(tǒng)

    java編寫汽車租賃系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了java編寫汽車租賃系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • Java中5種異步實(shí)現(xiàn)的方式詳解

    Java中5種異步實(shí)現(xiàn)的方式詳解

    同步操作如果遇到一個(gè)耗時(shí)的方法,需要阻塞等待,那么我們有沒(méi)有辦法解決呢?讓它異步執(zhí)行,下面我會(huì)詳解異步及實(shí)現(xiàn),需要的可以參考一下
    2022-09-09
  • Android仿微信實(shí)現(xiàn)左滑顯示刪除按鈕功能

    Android仿微信實(shí)現(xiàn)左滑顯示刪除按鈕功能

    這篇文章主要為大家詳細(xì)介紹了java仿微信實(shí)現(xiàn)左滑顯示刪除按鈕功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-10-10
  • IDEA配置MAVEN本地倉(cāng)庫(kù)的實(shí)現(xiàn)步驟

    IDEA配置MAVEN本地倉(cāng)庫(kù)的實(shí)現(xiàn)步驟

    本文主要介紹了IDEA配置MAVEN本地倉(cāng)庫(kù)的實(shí)現(xiàn)步驟,將詳細(xì)介紹如何配置Maven環(huán)境變量,Maven配置文件,可以輕松地設(shè)置和配置MAVEN本地倉(cāng)庫(kù),以便在IDEA中享受更高效的開(kāi)發(fā)體驗(yàn)
    2023-08-08
  • SpringBoot應(yīng)用部署于外置Tomcat容器的方法

    SpringBoot應(yīng)用部署于外置Tomcat容器的方法

    這篇文章主要介紹了SpringBoot應(yīng)用部署于外置Tomcat容器的方法,本文分步驟給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2018-06-06
  • import java和javax區(qū)別小結(jié)

    import java和javax區(qū)別小結(jié)

    Java包和javax包在Java編程語(yǔ)言中都起著至關(guān)重要的作用,本文就來(lái)介紹一下import java和javax區(qū)別小結(jié),具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-10-10
  • SpringCloud Zuul過(guò)濾器實(shí)現(xiàn)登陸鑒權(quán)代碼實(shí)例

    SpringCloud Zuul過(guò)濾器實(shí)現(xiàn)登陸鑒權(quán)代碼實(shí)例

    這篇文章主要介紹了SpringCloud Zuul過(guò)濾器實(shí)現(xiàn)登陸鑒權(quán)代碼實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-03-03
  • JAVA中excel導(dǎo)出一對(duì)多合并具體實(shí)現(xiàn)

    JAVA中excel導(dǎo)出一對(duì)多合并具體實(shí)現(xiàn)

    項(xiàng)目中經(jīng)常會(huì)使用到導(dǎo)出功能,有導(dǎo)出Word,有導(dǎo)出Excel的,下面這篇文章主要給大家介紹了關(guān)于JAVA中excel導(dǎo)出一對(duì)多合并具體實(shí)現(xiàn)的相關(guān)資料,需要的朋友可以參考下
    2023-09-09
  • java判定數(shù)組或集合是否存在某個(gè)元素的實(shí)例

    java判定數(shù)組或集合是否存在某個(gè)元素的實(shí)例

    下面小編就為大家?guī)?lái)一篇java判定數(shù)組或集合是否存在某個(gè)元素的實(shí)例。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-01-01
  • 詳解Spring簡(jiǎn)單容器中的Bean基本加載過(guò)程

    詳解Spring簡(jiǎn)單容器中的Bean基本加載過(guò)程

    本篇將對(duì)定義在 XMl 文件中的 bean,從靜態(tài)的的定義到變成可以使用的對(duì)象的過(guò)程,即 bean 的加載和獲取的過(guò)程進(jìn)行一個(gè)整體的了解
    2017-05-05

最新評(píng)論