Spring Boot 版本了解

Spring Boot 2.4.0

全新的配置文件处理(properties/yml),改变了配置文件的加载逻辑,目的是简化和合理化外部配置的加载方式,但是它可能具有不向下兼容性。改变了处理application.properties和application.yml文件的方式:

当使用复杂的文件或者是spring cloud的配置中心,此时默认不向下兼容。需要设置spring.config.use-legacy-processing = true #

多文档yaml文件,更需要注意要按照声明文档的顺序添加属性。(老版本中个文档的添加顺序基于配置文件的激活顺顺序,所以如果有互相覆盖的属性,应该保证执行的属性在文件中位置低)

嵌入式数据库检测

改进嵌入式数据库检测机制:仅当数据库在内存中时才将其视为嵌入式数据库。如果使用H2,HSQL等产品,但是你是基于文件的持久性或使用的是服务器模式,那么将不会检测为内存数据库。

不再注册DefaultServlet

从spring boot 2.4开始,默认将不会再注册DefaultServlet。因为在绝大多数的应用中,spring MVC提供的DefaultServlet是唯一需要被注册的Servlet.

DefaultServlet是Java EE提供的标准技术,Tomcat丶Jetty都提供了这个类。当别的servlet都没有匹配上是就交给它来处理,一般用于处理静态资源。

HTTP traces不再包含cookie头

HTTP traces默认将不再包含请求头cookie以及响应头set-cookie

AbstractServletWebServerFactory:

// 2.4.0之前版本,默认值是true

private boolean registerDefaultServlet = true;

// 2.4.0以及之后版本,默认值是false

private boolean registerDefaultServlet = false;

Spring Boot 2.4.1

Spring Boot 2.4.1是2020年的最后一次版本更新,目的是对于Spring Boot 2.4.0版本的维护和bug修复

通过通配符匹配的配置文件相互覆盖的问题

配置属性与JavaBean之间绑定的顺序问题

允许递归配置文件组的引用

外部应用程序属性加载顺序的问题

@Name在Kotlin中绑定失败的问题

Redis健康检查器对性能消耗过大的问题

Actuator端点在MVC和WebFlux下运行时,无法正确响应自定义HTTP状态码

Actuator的env端点没有正确显示包装类型的数据

通过配置树绑定非字符串属性时,找不到转换器的问题

使用Log4J调用LoggingSystem时会抛出NullPointerException的问题

加载属性文件的时候,“#”标注之后的内容会丢失

在启用WebTestClientContextCustomizer之前,确保WebClient已经存在。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
禁止转载,如需转载请通过简信或评论联系作者。

相关阅读更多精彩内容

  • 一、Lambda表达式二、方法调用(双冒号)的用法三、Stream函数式操作流元素集合四 、接口新增:默认方法与静...
    yannhuang阅读 916评论 0 0
  • 微信搜「烟雨星空」,白嫖更多好文。 现在 Oracle 官方每隔半年就会出一个 JDK 新版本。按时间来算的话,这...
    烟雨星空阅读 1,432评论 2 4
  • 阅读原文 Chapter 14 . JDK8新特性 14.1 Lambda 表达式 Lambda 是一个匿名函数,...
    GeekGray阅读 1,097评论 0 10
  • Jdk8相对之前的jdk加入了很多的新特性。 1:jdk中加入了default关键字。 在java里面,我们通常都...
    尘埃里的玄阅读 837评论 0 0
  • 官方新特性说明地址 下面对几个常用的特性做下重点说明。 一、Lambda表达式 1.1 函数式编程 百科介绍:h...
    丘八老爷阅读 1,065评论 0 6

友情链接更多精彩内容