查看原文
其他

Spring Boot 2.2.1 发布,一个有点坑的版本!

栈长 Java技术栈 2020-02-12

上一篇: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读取配置的几种方式

来看下使用区别,真是够折腾的几个版本。

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技术栈" ,公众号第一时间推送!

- END -
推荐阅读:
1、歪国人整理的 2019 年 Java 开发路线图
2、Spring Boot 之配置导入,强大到不行!
3、图解高内聚与低耦合,傻瓜都能看懂!
4、不用 Notepad++,还有更牛逼的选择!
5、分享一份 2019 最新 Java 架构师学习资料
关注Java技术栈公众号在后台回复:boot,可获取一份栈长整理的最新 Spring Boot 技术干货。

点击「阅读原文」和栈长学更多~

    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存