springboot 多環(huán)境切換的方法
properties文件
profile是Spring對不同環(huán)境提供不同配置功能的支持,可以通過激活不同的環(huán)境版本,實(shí)現(xiàn)快速切換環(huán)境;
例如:
application-test.properties 代表測試環(huán)境配置
application-dev.properties 代表開發(fā)環(huán)境配置
但是Springboot并不會(huì)直接啟動(dòng)這些配置文件,它默認(rèn)使用application.properties主配置文件;
我們需要通過一個(gè)配置來選擇需要激活的環(huán)境:
spring.profiles.active=dev
spring.profiles.active可以指定配置環(huán)境,如指定為dev就會(huì)選擇 application-dev.properties 文件作為配置環(huán)境,同理,要指定不同的環(huán)境配置,只需指定application-xxx.properties的xxx即可。
如此時(shí)創(chuàng)建不同的配置文件

在主配置文件中加入spring.profiles.active=dev,
在 application-dev.properties 中加入:
server.port=8081
在 application-test.properties 中加入
server.port=8082
啟動(dòng)項(xiàng)目,可以看到端口設(shè)置為了8081

springboot 啟動(dòng)會(huì)掃描以下位置的application.properties或者application.yml文件作為Spring boot的默認(rèn)配置文件:
優(yōu)先級1:項(xiàng)目路徑下的config文件夾配置文件 file: ./config/
優(yōu)先級2:項(xiàng)目路徑下配置文件:file: ./
優(yōu)先級3:資源路徑下的config文件夾配置文件 classpath: ./config/
優(yōu)先級4:資源路徑下配置文件: classpath: ./ ----------默認(rèn)創(chuàng)建application.properties的地方
yaml文件
yaml文件切換配置環(huán)境與properties文件有所不同,它可以在同一個(gè)文件中配置多套環(huán)境,只要給每套環(huán)境設(shè)置名稱,在主配置環(huán)境中指定即可:
server: port: 8081 #選擇要激活那個(gè)環(huán)境 spring: profiles: active: test --- server: port: 8083 spring: profiles: dev #配置環(huán)境的名稱 --- server: port: 8084 spring: profiles: test #配置環(huán)境的名稱
測試就發(fā)現(xiàn)啟動(dòng)端口是8084,切換環(huán)境成功
兩種配置方式的比較
1. Properties配置多環(huán)境,需要添加多個(gè)配置文件,YAML只需要一個(gè)配件文件
yml文件本身具有區(qū)分不同環(huán)境的能力
2.書寫格式的差異,yaml相對比較簡潔,優(yōu)雅
3. YAML的缺點(diǎn):不能通過@PropertySource注解加載。如果需要使用@PropertySource注解的方式加載值,那就要使用properties文件。
到此這篇關(guān)于springboot 多環(huán)境切換的方法的文章就介紹到這了,更多相關(guān)springboot 多環(huán)境切換 內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
SpringBoot預(yù)加載與懶加載實(shí)現(xiàn)方法超詳細(xì)講解
Spring一直被詬病啟動(dòng)時(shí)間慢,可Spring/SpringBoot是輕量級的框架。因?yàn)楫?dāng)Spring項(xiàng)目越來越大的時(shí)候,在啟動(dòng)時(shí)加載和初始化Bean就會(huì)變得越來越慢,很多時(shí)候我們在啟動(dòng)時(shí)并不需要加載全部的Bean,在調(diào)用時(shí)再加載就行,那這就需要預(yù)加載與懶加載的功能了2022-11-11
解決springboot文件上傳提示臨時(shí)文件夾不存在問題
這篇文章主要介紹了解決springboot文件上傳提示臨時(shí)文件夾不存在問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-05-05
SpringBoot使用GZIP壓縮反回?cái)?shù)據(jù)問題
這篇文章主要介紹了SpringBoot使用GZIP壓縮反回?cái)?shù)據(jù)問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2025-04-04
Springboot整合分頁插件PageHelper步驟解析
這篇文章主要介紹了Springboot整合分頁插件PageHelper步驟解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-06-06
Java 采用反射獲取class屬性值的實(shí)現(xiàn)代碼
以下是對在Java中采用反射獲取class屬性值的實(shí)現(xiàn)代碼進(jìn)行了分析介紹,需要的朋友可以過來參考下2013-08-08
SpringMVC @ResponseBody 415錯(cuò)誤處理方式
這篇文章主要介紹了SpringMVC @ResponseBody 415錯(cuò)誤處理方式,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-11-11
三步輕松實(shí)現(xiàn)Java的SM2前端加密后端解密
SM2算法和RSA算法都是公鑰密碼算法,SM2算法是一種更先進(jìn)安全的算法,在我們國家商用密碼體系中被用來替換RSA算法,這篇文章主要給大家介紹了關(guān)于如何通過三步輕松實(shí)現(xiàn)Java的SM2前端加密后端解密的相關(guān)資料,需要的朋友可以參考下2024-01-01

