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

您的位置:首頁技術文章
文章詳情頁

Spring Boot 2.4版本前后的分組配置變化及對多環境配置結構的影響(推薦)

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

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

spring.profiles.include對于這個配置項,你是否熟悉呢?從字面意思也不難理解,應該就是用來引入一些其他配置的配置(因為有個include嘛),實際作用也確實如此!

當我們的應用有很多配置信息的時候,比如當用到了很多中間件MySQL、Redis、MQ等,每個中間件的配置都是一大串的,那么這個時候我們為了配置更簡潔一些,可能就會對其做分組。

如果你有用過這樣的配置方式,那么在升級2.4版本的時候一定要注意,因為原來的配置方法會失效!

2.4之前的分組配置

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

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

其中:

第一個spring.profiles.active: dev,代表默認激活dev配置

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

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

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

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

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

2.4的分組配置

在升級spring boot到2.4之后,再啟動之前的應用,你會發現配置就沒有生效了,這里不僅是因為spring.profiles失效的原因,即使我們將其都修改為spring.config.activate.on-profile,也依然無法激活dev-db和dev-mq的配置。因為在2.4版本之后,我們需要使用spring.profiles.group來配置了,同時組織結構也發生了變化。

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

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

啟動應用可以在日志開頭看到激活的配置組(默認激活的是dev,所以對應的就是dev-db和dev-mq):

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

、修改spring.profiles.active: 'prod'直接切換到另外一個環境。

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

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

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

回憶一下我們在《Spring Boot 2.4 對多環境配置的支持更改》中提到的多環境配置,是不是不同環境的配置標識都集中定義在了每個spring.config.activate.on-profile里。而這次分組的配置改變,讓激活配置、環境配置集中到了默認配置里,其他的profile定義是環境+配置分組的組合內容。

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

代碼示例

本文的相關例子可以查看下面倉庫中的chapter1-3目錄:

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

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

到此這篇關于Spring Boot 2.4版本前后的分組配置變化及對多環境配置結構的影響的文章就介紹到這了,更多相關Spring Boot 2.4分組配置變化內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Spring
相關文章:
主站蜘蛛池模板: 亚洲社区在线 | 免费一级网站 | 成人欧美 | 日本二级毛片免费 | 国产综合精品在线 | 日本精品高清一区二区不卡 | 精品久久免费视频 | 久热国产在线视频 | 欧美一级做一a做片性视频 欧美一级做一级爱a做片性 | 国产成人爱片免费观看视频 | 午夜性色福利视频在线视频 | 91国在线观看 | 欧美毛片大全 | 久久久精品久久视频只有精品 | 国产高清在线精品二区一 | 日韩中文字幕精品 | 久久久国产一区二区三区 | 欧美xxxxx色视频在线观看 | 欧美成本人视频 | 亚洲精品美女视频 | 97青青草原国产免费观看 | 九九精品国产兔费观看久久 | 亚洲精品国产一区二区 | 欧美在线一区二区三区 | 精品欧美一区二区三区在线 | 亚洲综合久久综合激情久久 | 亚洲高清在线观看播放 | 亚洲综合精品一区二区三区中文 | 美女张开腿让我 | 在线成人免费视频 | 精品欧美成人高清在线观看2021 | 成年人视频在线免费播放 | 一级一级毛片看看 | 久久在线国产 | 成人97| 日韩中文字幕精品 | 久久国产免费观看精品3 | a级片在线观看 | 国产成 人 综合 亚洲绿色 | 亚洲国产欧洲综合997久久 | 国产一级特黄特色aa毛片 |