Spring Framework 6.0.0 发布了第二个 RC 版本。
新特性
确保可以在构建时评估 classpath 检查
为 JPA 持久化回调引入 Register 反射提示
检查 @RegisterReflectionForBinding 是否至少指定一个类
为 AOT 引擎设置引入 builder API
支持检测正在进行的 AOT 处理
重新组织 HTTP Observation 类型
支持在没有 java.beans.Introspector 的前提下,执行基本属性判断
为BindingReflectionHintsRegistrar 添加 Kotlin 数据类组件支持
将 HttpServiceFactory 和 RSocketServiceProxyFactory 切换到 builder 模型,以便优先进行可编程配置
引入基于 GraalVM FieldValueTransformer API 的 PreComputeFieldFeature
在 TestContext 框架中引入 SPI 来处理 ApplicationContext 故障
SimpleEvaluationContext 支持禁用 array 分配
DateTimeFormatterRegistrar 支持默认回退到 ISO 解析
Spring Framework 6.0 作为重大更新,要求使用 Java 17 或更高版本,并且已迁移到 Jakarta EE 9+(在 jakarta 命名空间中取代了以前基于 javax 的 EE API),以及对其他基础设施的修改。基于这些变化,Spring Framework 6.0 支持最新 Web 容器,如 Tomcat 10 / Jetty 11,以及最新的持久性框架 Hibernate ORM 6.1。这些特性仅可用于 Servlet API 和 JPA 的 jakarta 命名空间变体。
值得一提的是,开发者可通过此版本在基于 Spring 的应用中体验 “虚拟线程”(JDK 19 中的预览版 “Project Loom”),查看此文章了解更多细节。现在提供了自定义选项来插入基于虚拟线程的 Executor 实现,目标是在 Project Loom 正式可用时提供 “一等公民” 的配置选项。
除了上述的变化,Spring Framework 6.0 还包含许多其他改进和特性,例如:
提供基于 @HttpExchange
服务接口的 HTTP 接口客户端对 RFC 7807 问题详细信息的支持
Spring HTTP 客户端提供基于 Micrometer 的可观察性