先闻Spring Framework 6.0 RC1版本

前言        

        功能完整Spring6.0候选版本已发布,Spring官方希望在之后发布第一个Spring Boot 3.0候选版本时发布更多的选版本,然后在11月发布最终版本。

        作为核心框架的主要修订版,Spring 6.0 RC1版本附带了Java 17+基础,迁移至Jakarta EE 9+(Java ee的前生)上以及更多的基础的改造,例如最新的web容器jakarta命令替换(javax)、Tomcat 10 / Jetty 11和最新的持久化框架如 Hibernate ORM 6.1 

        更重要的是,这个版本完成了我们对Spring应用程序上下文的AOT( Ahead-Of-Time,AOT即提前编译技术)处理支持。这开阔了更多的优化部署安排,从微调的JVM部署到对GraalVM本机映像的一流支持(参见相关的Spring Boot 3博客文章)。请继续关注Spring Boot 3.0 RC1!

        在Spring Framework 6.0中还有许多进一步的特性和改进,例如基于服务接口的HTTP接口客户端,对@HttpExchangeRFC 7807问题细节的支持,以及Spring的HTTP客户端的Micrometer-based 。请查看我们的What 's New页面以获得全面的概述,并尽早试用6.0 !

特性

基于JDK 17+ and Jakarta EE 9+

  • 整个框架代码库基于Java 17源代码级别。
  • Servlet、JPA等从“javax”命名空间迁移到“jakarta”命名空间。
  • 兼容最新的web容器:Tomcat 10, Jetty 11。
  • 提前兼容JDK 19的虚拟线程( virtual threads)

普通代码修改

  • 升级到ASM 9.4和Kotlin 1.7
  • 完成CGLIB fork,支持获取CGLIB生成的类。
  • 全面基础的支持AOT(Ahead-Of-Time transformations.)提前编译的支持
  • 支持 GraalVM 

核心容器(Core Container)

  • 在GenericApplicationContext ("refreshForAotProcessing")中支持AOT处理。
  • 基于提前解析的构造函数和工厂方法的完成对Bean的定义。
  • PathMatchingResourcePatternResolver使用NIO和模块路径api进行扫描。
  • Support for early proxy class determination for AOP proxies and configuration classes.

数据存取及事务处理(Data Access and Transactions)

  • Support for pre-determining JPA managed types (for inclusion in AOT processing).
  • JPA support for Hibernate ORM 6.1 (retaining compatibility with Hibernate ORM 5.6).
  • Upgrade to R2DBC 1.0 (including R2DBC transaction definitions).
  • Removal of JCA CCI support.

Spring Messaging

  • RSocket interface client based on @RSocketExchange service interfaces.
  • Early support for Reactor Netty 2 based on Netty 5 alpha.

General Web Revision

  • HTTP interface client based on @HttpExchange service interfaces.
  • Support for RFC 7807 problem details.
  • Unified HTTP status code handling.
  • Micrometer-based (JVM的一种技术)可以被 RestTemplate进行显示.

Spring MVC

  • PathPatternParser used by default (with the ability to opt into PathMatcher).
  • Integration with Micrometer Context Propagation for Flux and Mono return values from controller methods.
  • 移除过时的tile和FreeMarker JSP支持。

Spring WebFlux

  • New PartEvent API to stream multipart form uploads (both on client and server).
  • Addition of ResponseEntityExceptionHandler to customize WebFlux exceptions and render RFC 7807 error responses.
  • Flux return values for non-streaming media types (no longer collected to List before written).
  • Early support for Reactor Netty 2 based on Netty 5 alpha.
  • JDK HttpClient integrated with WebClient.
  • Micrometer-based (JVM的一种技术)可用于 WebClient显示.

Testing

  • 支持测试 AOT-processed .
  • Integration with HtmlUnit 2.64 request parameter handling.

你可能感兴趣的:(狗鼻子,spring6.0,wiki)