色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Spring Boot 2.4版本前后的分組配置變化及對(duì)多環(huán)境配置結(jié)構(gòu)的影響(推薦)

瀏覽:90日期:2023-07-28 09:30:49

前幾天在《Spring Boot 2.4 對(duì)多環(huán)境配置的支持更改》一文中,給大家講解了Spring Boot 2.4版本對(duì)多環(huán)境配置的配置變化。除此之外,還有一些其他配置變化,所以今天我們就繼續(xù)講講其他的更新內(nèi)容!

spring.profiles.include對(duì)于這個(gè)配置項(xiàng),你是否熟悉呢?從字面意思也不難理解,應(yīng)該就是用來引入一些其他配置的配置(因?yàn)橛袀€(gè)include嘛),實(shí)際作用也確實(shí)如此!

當(dāng)我們的應(yīng)用有很多配置信息的時(shí)候,比如當(dāng)用到了很多中間件MySQL、Redis、MQ等,每個(gè)中間件的配置都是一大串的,那么這個(gè)時(shí)候我們?yōu)榱伺渲酶?jiǎn)潔一些,可能就會(huì)對(duì)其做分組。

如果你有用過這樣的配置方式,那么在升級(jí)2.4版本的時(shí)候一定要注意,因?yàn)樵瓉淼呐渲梅椒〞?huì)失效!

2.4之前的分組配置

先來看看2.4版本之前的分組配置,我們用下面這個(gè)例子來介紹:

spring: profiles: active: 'dev'---spring.profiles: 'dev'spring.profiles.include: 'dev-db,dev-mq'---spring.profiles: 'dev-db'db: dev-db.didispace.com---spring.profiles: 'dev-mq'mq: dev-mq.didispace.com

其中:

第一個(gè)spring.profiles.active: dev,代表默認(rèn)激活dev配置

第二段dev配置中使用了spring.profiles.include來引入其他配置信息,這里模擬一下一個(gè)是dev的db配置,一個(gè)是dev的mq配置。在2.3和之前版本的時(shí)候,我們通常就是這樣來分組配置不同中間件的。

spring.profiles: 'dev'spring.profiles.include: 'dev-db,dev-mq'

文末我們提供一個(gè)樣例工程,你可以通過修改spring boot版本到2.3和配置信息使用上面的樣例,來啟動(dòng)應(yīng)用看看這種配置效果。不出意外,你可以在啟動(dòng)日志開頭,看到激活的配置信息如下:

The following profiles are active: dev,dev-db,dev-mq

同時(shí)激活了dev、dev-db、dev-mq三組配置,include是生效的。

2.4的分組配置

在升級(jí)spring boot到2.4之后,再啟動(dòng)之前的應(yīng)用,你會(huì)發(fā)現(xiàn)配置就沒有生效了,這里不僅是因?yàn)閟pring.profiles失效的原因,即使我們將其都修改為spring.config.activate.on-profile,也依然無法激活dev-db和dev-mq的配置。因?yàn)樵?.4版本之后,我們需要使用spring.profiles.group來配置了,同時(shí)組織結(jié)構(gòu)也發(fā)生了變化。

可以嘗試把配置修改成如下格式:

spring: profiles: active: 'dev' group: 'dev': 'dev-db,dev-mq' 'prod': 'prod-db,prod-mq'---spring: config: activate: on-profile: 'dev-db'db: dev-db.didispace.com---spring: config: activate: on-profile: 'dev-mq'mq: dev-mq.didispace.com---spring: config: activate: on-profile: 'prod-db'db: prod-db.didispace.com---spring: config: activate: on-profile: 'prod-mq'mq: prod-mq.didispace.com

啟動(dòng)應(yīng)用可以在日志開頭看到激活的配置組(默認(rèn)激活的是dev,所以對(duì)應(yīng)的就是dev-db和dev-mq):

The following profiles are active: dev,dev-db,dev-mq

、修改spring.profiles.active: 'prod'直接切換到另外一個(gè)環(huán)境。

重啟應(yīng)用可以在日志開頭看到激活的配置組:

The following profiles are active: prod,prod-db,prod-mq

可以看到,在2.4版本的配置中,不同環(huán)境的配置定義都在第一段默認(rèn)配置中了,所有的環(huán)境定義都轉(zhuǎn)移到了spring.profiles.group的key字段(上面配置了dev和prod),value字段則代表了每個(gè)環(huán)境需要加載的不同配置分組。

回憶一下我們?cè)凇禨pring Boot 2.4 對(duì)多環(huán)境配置的支持更改》中提到的多環(huán)境配置,是不是不同環(huán)境的配置標(biāo)識(shí)都集中定義在了每個(gè)spring.config.activate.on-profile里。而這次分組的配置改變,讓激活配置、環(huán)境配置集中到了默認(rèn)配置里,其他的profile定義是環(huán)境+配置分組的組合內(nèi)容。

對(duì)于這樣的調(diào)整,最直觀的感受就是選擇環(huán)境的時(shí)候,我不需要往下找有哪些profile就能知道有哪些可選項(xiàng)了,還是方便不少。那么你對(duì)這樣的配置調(diào)整怎么看呢?歡迎留言討論!

代碼示例

本文的相關(guān)例子可以查看下面?zhèn)}庫(kù)中的chapter1-3目錄:

Github:https://github.com/dyc87112/SpringBoot-Learning/

Gitee:https://gitee.com/didispace/SpringBoot-Learning/

到此這篇關(guān)于Spring Boot 2.4版本前后的分組配置變化及對(duì)多環(huán)境配置結(jié)構(gòu)的影響的文章就介紹到這了,更多相關(guān)Spring Boot 2.4分組配置變化內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: Spring
相關(guān)文章:
主站蜘蛛池模板: 免费观看日本高清a毛片 | 美女张开腿让我 | 国产亚洲精品国产第一 | 18年大片免费在线 | 国产浮力第一页草草影院 | 99精品福利视频在线一区 | 九九精品视频在线 | 欧美成人手机视频免费播放 | 国产男女 爽爽爽爽视频 | ⅹxx中国xxx人妖 | 日韩美女在线看免费观看 | 99久久精品免费看国产高清 | 久久精品国产精品亚洲人人 | 免费v片在线观看 | 成人精品视频在线 | 男人的天堂免费 | 亚洲爆爽 | 日本一极毛片兔费看 | 日韩三及片 | 国产真实乱系列2孕妇 | 亚洲欧美日韩在线一区二区三区 | 91亚洲国产成人久久精品网址 | 美女毛片大全 | 国产精品日韩欧美一区二区三区 | 99热热久久这里只有精品166 | 久青草国产手机在线观 | 国产成人一区二区三区在线视频 | 99精选视频| 色噜噜狠狠大色综合 | 高清偷自拍第1页 | 亚洲加勒比在线 | 男人天堂免费 | 国产精品久久久久免费 | 久久福利青草免费精品 | 国产欧美成人 | 三级黄色片日韩 | 欧美成人免费 | 国产精品女上位在线观看 | 目韩一区二区三区系列片丶 | 欧美日韩国产在线观看一区二区三区 | 免费一级特黄 欧美大片 |