Spring Boot 2.4 對(duì)多環(huán)境配置的支持更改示例代碼
在目前最新的Spring Boot 2.4版本中,對(duì)配置的加載機(jī)制做了較大的調(diào)整。相關(guān)的問(wèn)題最近也被問(wèn)的比較多,所以今天就花點(diǎn)時(shí)間,給大家講講Spring Boot 2.4的多環(huán)境配置較之前版本有哪些變化。
多環(huán)境配置2.4版本之前先回顧下,2.4版本之前,我們?cè)趛aml配置文件中,使用spring.profiles來(lái)定義不同環(huán)境的標(biāo)識(shí),比如下面這樣:
spring: profiles: 'dev'name: dev.didispace.com---spring: profiles: 'test'name: test.didispace.com---spring: profiles: 'prod'name: prod.didispace.com2.4版本之后
而在本次2.4版本升級(jí)之后,我們需要將spring.profiles配置用spring.config.activate.on-profile替代,比如上面的配置需要修改為如下配置:
spring: config: activate: on-profile: 'dev'name: dev.didispace.com---spring: config: activate: on-profile: 'test'name: test.didispace.com---spring: config: activate: on-profile: 'prod'name: prod.didispace.com指定環(huán)境啟動(dòng)
應(yīng)用啟動(dòng)的時(shí)候,我們要加載不同的環(huán)境配置的參數(shù)不變,依然采用spring.profiles.active參數(shù),對(duì)應(yīng)值采用spring.config.activate.on-profile定義的標(biāo)識(shí)名稱。比如下面的命令就能激活dev環(huán)境的配置。
java -jar myapp.jar -Dspring.profiles.active=dev
在應(yīng)用啟動(dòng)的時(shí)候,我們也能看到對(duì)應(yīng)的配置激活日志:
2020-12-16 16:34:20.614 INFO 5951 --- [ main] c.d.chapter12.Chapter12Application : The following profiles are active: dev
我們也可以將spring.profiles.active寫(xiě)入yaml配置中,這樣的作用就可以指定默認(rèn)使用某一個(gè)環(huán)境的配置,通常我們可以設(shè)置成開(kāi)發(fā)環(huán)境,這樣有利于我們平時(shí)的開(kāi)發(fā)調(diào)試,而真正部署到其他環(huán)境的時(shí)候則多以命令參數(shù)激活為主。
spring: profiles: active: 'dev'---spring: config: activate: on-profile: 'dev'name: dev.didispace.com---spring: config: activate: on-profile: 'test'name: test.didispace.com---spring: config: activate: on-profile: 'prod'name: prod.didispace.com
代碼示例
本文的相關(guān)例子可以查看下面?zhèn)}庫(kù)中的chapter1-2目錄:
Github:https://github.com/dyc87112/SpringBoot-Learning/
Gitee:https://gitee.com/didispace/SpringBoot-Learning/
到此這篇關(guān)于Spring Boot 2.4 對(duì)多環(huán)境配置的支持更改的文章就介紹到這了,更多相關(guān)Spring Boot 2.4 多環(huán)境配置內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. idea給項(xiàng)目打war包的方法步驟2. Intellij IDEA 2020.3 配置教程詳解3. IntelliJ IDEA刪除類的方法步驟4. Python importlib模塊重載使用方法詳解5. ASP基礎(chǔ)入門(mén)第八篇(ASP內(nèi)建對(duì)象Application和Session)6. 兩行Javascript代碼生成UUID的方法7. IntelliJ IDEA設(shè)置編碼格式的方法8. 解決python中import文件夾下面py文件報(bào)錯(cuò)問(wèn)題9. 使用 kind 和 Docker 啟動(dòng)本地的 Kubernetes環(huán)境10. XML入門(mén)精解之結(jié)構(gòu)與語(yǔ)法
