上一篇:Spring Boot 2.2.0 正式發布,支持 JDK 13!
Spring Boot 2.2.0 沒發布多久,Spring Boot 2.2.1 又發布了,這是一個很有意思,又有點 "坑" 的一個版本。
除了日常的 bug 修復、優化提升、依賴升級,這個版本又顛覆了一個 Spring Boot 2.2.0 配置。
如果你已經升級到了 Spring Boot 2.2.0,@ConfigurationProperties
注解是可以不需要定義 Bean 直接使用的。
@ConfigurationProperties
如何使用,可以看這篇文章:
來看下使用區別,真是夠折騰的幾個版本。
Spring Boot 2.2.0 之前:
@Configuration
@ConfigurationProperties(prefix = "xxx")
public class XXXProperties
Spring Boot 2.2.0:
@ConfigurationProperties(prefix = "xxx")
public class XXXProperties
看見沒,不需要定義 Bean,可以直接被自動掃描到。
而在 Spring Boot 2.2.1 中又作了調整:
Spring Boot 2.2.1:
@ConfigurationProperties
自動掃描支持被廢棄,恢復到 2.2.0 之前的用法了,又加了一個新的配置方法:
@Configuration
@ConfigurationProperties(prefix = "xxx")
public class XXXProperties
或者是:
@ConfigurationProperties(prefix = "xxx")
public class XXXProperties
@SpringBootApplication
@ConfigurationPropertiesScan
@EnableConfigurationProperties
public class Application
這個版本加了一個 @ConfigurationPropertiesScan
注解,用來主動掃描沒有定義 Bean 的 @ConfigurationProperties
,相當於一個總開關,我覺得倒挺好的。
如果從 Spring Boot 2.2.0 過度到 Spring Boot 2.2.1,對於這個配置,如果不注意,就可能會有問題。
所以,千萬別升級太快,否則是給自己挖坑……
未完,棧長將陸續分享 Spring Boot 最新技術教程,現在已經寫了一堆存貨了,關注微信公眾號 "Java技術棧" ,公眾號第一時間推送!