Spring Framework 6 发布了首个补丁更新,包含 21 项 bugfix、功能改进和文档优化。
新特性
SourceHttpMessageConverter
已成为可选项 #29535- 完全弃用
LocalVariableTableParameterNameDiscoverer
(避免在原生镜像中公开)#29531 - 使 GeneratorStrategy.generate 在原生环境中无法访问 #29521
- 升级
LogAdapter
,支持删除 build-time 代码 #29506
Bugfix
- 未处理的异常将 Servlet 观察结果标记为错误 #29512
升级依赖项
延伸阅读
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 的可观察性
- ……