发布公告写道,Spring Framework 6.0 作为重大更新,目前 RC1 要求使用 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 应用上下文的 AOT 转换和相应的 AOT 处理支持的基础。该变化有助于优化部署安排,从微调的 JVM 部署到对 GraalVM 原生镜像的 “一等公民” 支持(阅读相关的 Spring Boot 3 文章)。
值得一提的是,开发者可通过此版本在基于 Spring 的应用中体验 “虚拟线程”(JDK 19 中的预览版 “Project Loom”),查看此文章了解更多细节。现在提供了自定义选项来插入基于虚拟线程的 Executor 实现,目标是在 Project Loom 正式可用时提供 “一等公民” 的配置选项。
除了上述的变化,Spring Framework 6.0 还包含许多其他改进和特性,例如:
提供基于 @HttpExchange 服务接口的 HTTP 接口客户端
对 RFC 7807 问题详细信息的支持
Spring HTTP 客户端提供基于 Micrometer 的可观察性
……
此外,团队称将在下周发布 Spring Boot 3.0 首个 RC 版本,以及 Spring Framework 6.0 的第二个 RC,然后在 11 月正式 GA。