springboot 多環境切換的方法
properties文件
profile是Spring對不同環境提供不同配置功能的支持,可以通過激活不同的環境版本,實現快速切換環境;
例如:application-test.properties 代表測試環境配置application-dev.properties 代表開發環境配置但是Springboot并不會直接啟動這些配置文件,它默認使用application.properties主配置文件;
我們需要通過一個配置來選擇需要激活的環境:
spring.profiles.active=dev
spring.profiles.active可以指定配置環境,如指定為dev就會選擇 application-dev.properties 文件作為配置環境,同理,要指定不同的環境配置,只需指定application-xxx.properties的xxx即可。
如此時創建不同的配置文件
在主配置文件中加入spring.profiles.active=dev,
在 application-dev.properties 中加入:
server.port=8081
在 application-test.properties 中加入
server.port=8082
啟動項目,可以看到端口設置為了8081
springboot 啟動會掃描以下位置的application.properties或者application.yml文件作為Spring boot的默認配置文件:
優先級1:項目路徑下的config文件夾配置文件 file: ./config/優先級2:項目路徑下配置文件:file: ./優先級3:資源路徑下的config文件夾配置文件 classpath: ./config/優先級4:資源路徑下配置文件: classpath: ./ ----------默認創建application.properties的地方
yaml文件
yaml文件切換配置環境與properties文件有所不同,它可以在同一個文件中配置多套環境,只要給每套環境設置名稱,在主配置環境中指定即可:
server: port: 8081#選擇要激活那個環境spring: profiles: active: test---server: port: 8083spring: profiles: dev #配置環境的名稱---server: port: 8084spring: profiles: test #配置環境的名稱
測試就發現啟動端口是8084,切換環境成功
兩種配置方式的比較
1. Properties配置多環境,需要添加多個配置文件,YAML只需要一個配件文件
yml文件本身具有區分不同環境的能力
2.書寫格式的差異,yaml相對比較簡潔,優雅
3. YAML的缺點:不能通過@PropertySource注解加載。如果需要使用@PropertySource注解的方式加載值,那就要使用properties文件。
到此這篇關于springboot 多環境切換的方法的文章就介紹到這了,更多相關springboot 多環境切換 內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!
相關文章:
