Spring Boot 版本2024 年 8 月 29 日 | 阅读 3 分钟 Spring Boot 的最新版本是 2.0。它引入了许多新功能以及一些修改和替换。 Spring Boot 2.0让我们先来一睹 Spring Boot 2.0 的风采。 - 新功能
基础设施升级 Spring Framework 5 - 已更改
配置属性 Gradle 插件 执行器端点 - 正在演进
安全性 指标
关键团队升级了基础设施,其中包括以下工具 - 支持 Java 8 或更高版本
- 支持 Apache Tomcat 8 或更高版本
- 支持 Thymeleaf 3
- 支持 Hibernate 5.2
在 Spring Framework 5 中,Pivotal 团队升级了以下内容 - 响应式 Spring
- Servlet 堆栈
- Servlet 容器
- Servlet API
- Spring MVC
- 响应式堆栈
- Netty、Servlet 3.1、Undertow
- 响应式 HTTP 层
- Spring WebFlux
- 功能 API
- Kotlin 支持
Spring Boot 的最新版本是 2.2.1。此版本的 Spring Boot 包含 110 个修复程序、依赖项升级和改进。 在 Spring Boot v2.2.1 中,@ConfigurationProperties 注释扫描现在默认被禁用。我们需要通过添加 @ConfigurationPropertiesScan 注释来显式选择加入。 新功能- 支持属性嵌套在 JavaBean 内部的构造函数绑定
- 为 WebFlux 中的 CodecConfigurer.maxInMemorySize 添加配置属性
- 使测试切片的类型排除过滤器公开
- 支持 spring.rabbitmq.addresses 中的 amqps:// URIs
依赖项升级Spring Boot v2.2.1 中升级的一些依赖项如下 - Mongodb 3.11.2
- Spring Security 5.2.1.RELEASE
- Slf4j 1.7.29
- Spring Hateoas 1.0.1.RELEASE
- Hibernate Validator 6.0.18.Final
- Hibernate 5.4.8.Final
- Jetty 9.4.22.v20191022
- Spring Framework 5.2.1
- Spring AMQP 2.2.1
- H2 1.4.200
- Spring Security 5.2
- Spring Batch 4.2
此版本中升级了一些重要且广泛使用的第三方依赖项,如下所示 - Micrometer 1.3.1
- Flyway 6.0.7
- Elasticsearch 6.8.4
- JUnit 5.5
- Jackson 2.10
性能改进在 Spring Boot 2.2.1 中,以下性能得到了改进 延迟初始化 在 Spring Boot 2.2.1 中,我们可以使用属性 spring.main.lazy-initialization 属性启用全局惰性初始化。它减少了应用程序的启动时间。 Java 13 支持 Spring Boot 2.2.1 现在支持最新版本的 Java,即 Java 13。 不可变绑定 在新版本的 Spring Boot 中,配置属性支持基于构造函数的绑定。使用@ConfigurationProperties 注释的类必须是不可变的。可以通过将注释 @ConfugurationProperties 添加到类或其构造函数之一(带 @ConstructorBinding)来启用它。 RSocket 支持 它是 Spring Security 的一部分。当应用程序发现 classpath 上存在 spring-security-rsocket 时,RSocket 集成会自动配置。 Spring Boot 2.2 中的弃用- 属性 logging.file 已重命名为 logging.file.name。
- 属性 logging.path 已重命名为 logging.file.path。
- server.connection-timeout 属性已被弃用,转而使用特定于服务器的属性。
- Joda time 支持已被弃用,转而使用 java.time。
在 Spring Boot 2.2.1 中进行了以下改进 - Java: Spring Boot 2.2.1
- Spring Framework 5.2: 此版本的 Spring Boot 将 Spring Framework 升级到 5.2。
- JMX 被禁用: 在此版本中,默认情况下未启用 JMX。我们可以使用属性 jmx.enabled=true 来启用它。如果您使用 IDE 功能来监视您的应用程序,我们需要启用它。
- 默认启用 Fork: 现在,默认情况下会 fork 由 Maven 插件运行的 Spring Boot 应用程序。
- JUnit 5: Spring Boot v2.2.1 默认提供 JUnit 5。JUnit 5 的 vintage 引擎也默认包含,支持现有的基于 JUnit 4 的测试类。我们还可以在同一个模块中使用基于 JUnit 4 和 JUnit 5 的测试类。
- AssertJ 3.12: 此版本的 Spring Boot 将 AssertJ 升级到 3.12。它包含与迭代器相关的断言的 API 更改。
- Hibernate Dialect: 在新版本的 Spring Boot 中,Hibernate 选择要使用的方言,而不是根据检测到的数据库应用默认方言。
- Gradle 要求: Spring Boot 的最新版本需要 Gradle 4.10。
|