springboot 多環(huán)境切換的方法
properties文件
profile是Spring對(duì)不同環(huán)境提供不同配置功能的支持,可以通過激活不同的環(huán)境版本,實(shí)現(xiàn)快速切換環(huán)境;
例如:application-test.properties 代表測(cè)試環(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)先級(jí)1:項(xiàng)目路徑下的config文件夾配置文件 file: ./config/優(yōu)先級(jí)2:項(xiàng)目路徑下配置文件:file: ./優(yōu)先級(jí)3:資源路徑下的config文件夾配置文件 classpath: ./config/優(yōu)先級(jí)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: 8083spring: profiles: dev #配置環(huán)境的名稱---server: port: 8084spring: profiles: test #配置環(huán)境的名稱
測(cè)試就發(fā)現(xiàn)啟動(dòng)端口是8084,切換環(huán)境成功
兩種配置方式的比較
1. Properties配置多環(huán)境,需要添加多個(gè)配置文件,YAML只需要一個(gè)配件文件
yml文件本身具有區(qū)分不同環(huán)境的能力
2.書寫格式的差異,yaml相對(duì)比較簡潔,優(yōu)雅
3. YAML的缺點(diǎn):不能通過@PropertySource注解加載。如果需要使用@PropertySource注解的方式加載值,那就要使用properties文件。
到此這篇關(guān)于springboot 多環(huán)境切換的方法的文章就介紹到這了,更多相關(guān)springboot 多環(huán)境切換 內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. Python的文本常量與字符串模板之string庫2. SpringBoot+TestNG單元測(cè)試的實(shí)現(xiàn)3. 利用CSS制作3D動(dòng)畫4. .Net加密神器Eazfuscator.NET?2023.2?最新版使用教程5. jsp+servlet簡單實(shí)現(xiàn)上傳文件功能(保存目錄改進(jìn))6. Springboot 全局日期格式化處理的實(shí)現(xiàn)7. Java GZip 基于內(nèi)存實(shí)現(xiàn)壓縮和解壓的方法8. 完美解決vue 中多個(gè)echarts圖表自適應(yīng)的問題9. 存儲(chǔ)于xml中需要的HTML轉(zhuǎn)義代碼10. JAMon(Java Application Monitor)備忘記
