中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Spring Boot中怎么使用一個yml文件通過不同的profile來配置屬性文件

發布時間:2021-02-19 10:11:45 來源:億速云 閱讀:641 作者:小新 欄目:編程語言

這篇文章主要介紹了Spring Boot中怎么使用一個yml文件通過不同的profile來配置屬性文件,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

在springboot的開發中,有時候我們會有不同的配置,例如日志打印,數據庫連接等,開發,測試,生產每個環境可能配置都不一致,還好,springboot支持通過不同的profile來配置不同環境的配置,下面就大致介紹一下yml配置文件跟properties配置文件怎么使用profile配置不同環境的配置文件...

先介紹一下開發環境:

  1. jdk版本是1.8

  2. springboot的版本是1.4.1

  3. 開發工具為 intellij idea

我們先來介紹,使用一個yml文件,通過不同的profile來配置屬性文件:

    1.首先,我們先創建一個名為 application.yml的屬性文件,如下:

Spring Boot中怎么使用一個yml文件通過不同的profile來配置屬性文件

    2.然后打開文件,輸入一下內容:

#查看springboot開啟了哪些配置
debug: false
spring:
 profiles:
 active: dev
---
#開發環境配置
spring:
 profiles: dev
server:
 port: 8080
---
#測試環境配置
spring:
 profiles: test
server:
 port: 8081
---
#生產環境配置
spring:
 profiles: pro
server:
 port: 8082

非常簡單的配置,application.yml文件分為四部分,使用一組(---)來作為分隔符,第一部分,為通用配置部分,表示三個環境都通用的屬性,spring.profiles.active稍后解釋.

后面三段分別為,開發,測試,生產,都用spring.profiles指定了一個值(開發為dev,測試為test,生產為pro),這個值表示該段配置應該用在哪個profile里面,

    PS:一定要注意!!一定要注意!!一定要注意!!所有屬性后面跟的value要跟 ":" 隔開一個空格,否則,配置無效!!!配置無效!!!配置無效!!!我當初就掉進來了,在此告知各位,別跟我一樣掉進來!!!

如果,我們是本地啟動,在通用配置里面,可以設置調用哪個環境的profile,也就是第一段的spring.profiles.active=XXX;

上面的XXX是每個環境的 spring.profiles對應的value,通過這個,可以控制本地啟動調用哪個環境的配置文件,例如:

spring:

    profiles:

        active: dev

加載的,就是開發環境的屬性,如果dev換成test,則會加載測試環境的屬性,生產也是如此,

PS:如果spring.profiles.active沒有指定值,那么只會使用沒有指定spring.profiles文件的值,也就是只會加載通用的配置

如果是部署到服務器的話,我們正常打成jar包,發布是時候,采用:

--spring.profiles.active=test或者pro 來控制加載哪個環境的配置,完整命令如下:

java -jar xxxxx.jar --spring.profiles.active=test  表示加載測試環境的配置

java -jar xxxxx.jar --spring.profiles.active=pro  表示加載生產環境的配置

上面介紹完了,我們本地啟動一下,先將spring.profiles.active的值設置為dev,看看日志打印結果:

Spring Boot中怎么使用一個yml文件通過不同的profile來配置屬性文件

通過日志分析,可以看到,打印了profiles的值為dev,下面看看打印的端口號

Spring Boot中怎么使用一個yml文件通過不同的profile來配置屬性文件

發現,端口號是8080說明加載了dev的配置;

下面我們來試試把active的值換成test,重啟看看:

Spring Boot中怎么使用一個yml文件通過不同的profile來配置屬性文件

active變成了test,

Spring Boot中怎么使用一個yml文件通過不同的profile來配置屬性文件

端口變為了8081,說明,加載的是test的配置,

接下來,就是使用多個yml配置文件進行配置屬性文件:

    如果是使用多個yml來配置屬性,我們則可以這么使用,通過與配置文件相同的明明規范,創建application-{profile}.yml文件,將于環境無關的屬性,放置到application.yml文件里面,可以通過這種形式來配置多個環境的屬性文件,在application.yml文件里面指定spring.profiles.active=profiles的值,來加載不同環境的配置,如果不指定,則默認只使用application.yml屬性文件,不會加載其他的profiles的配置

使用properties配置多個環境配置文件

如果使用application.properties進行多個環境的配置,原理跟使用多個yml配置文件一致,也是通過application-{profile}.properties來控制加載哪個環境的配置,將于環境無關的屬性,放置到application.properties文件里面,通過spring.profiles.active=profiles的值,加載不同環境的配置,如果不指定,則默認加載application.properties的配置,不會加載帶有profile的配置

感謝你能夠認真閱讀完這篇文章,希望小編分享的“Spring Boot中怎么使用一個yml文件通過不同的profile來配置屬性文件”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

南部县| 商水县| 定西市| 阿克苏市| 当涂县| 阳朔县| 六安市| 岳西县| 建水县| 富阳市| 芦山县| 金平| 镇赉县| 汉中市| 科尔| 阿拉善盟| 桐柏县| 郑州市| 闽清县| 林芝县| 巴马| 吴堡县| 玛曲县| 巫溪县| 揭东县| 仁化县| 盱眙县| 嘉定区| 基隆市| 清镇市| 资中县| 赤城县| 阿坝县| 象山县| 南充市| 灌南县| 泸西县| 安图县| 永州市| 泾川县| 洮南市|