Spring Framework 5.2 首个候选版 RC1 已发布,这是一个具备完整功能的版本,可从里程碑仓库进行获取。
按照发布计划,团队目前仍在准备 5.2 RC2 的开发工作,主要是进行小调整和性能改进,并暂定于 9
月中旬发布 GA 版本。在发布公告中,Spring 团队表示 Spring Framework 5.2
的更新跨度颇大,从对主要核心容器的优化到对反应式事务 (Reactive Transactions) 和 RSocket 的支持。
核心调整
- 升级至 ASM 7.1 和 Kotlin 1.3.
- 优化注解检索(Annotation retrieval):
- 引入新的
MergedAnnotations API 以用于高效和复杂的注解检索检查 - 引入候选类机制(candidate class),用于指示某些注解类型具备隐性存在的可能性
- Commons Logging conveniences:
- 将
LogMessage 作为一等(first-class)的消息发布者,以及基于参数的格式化支持 - 将
LogAccessor 作为一个便捷的替代方案,并提供对消息发布者的开箱即用支持
核心容器
@Configuration 模型改进:
- 对配置候选类上的内省注解(annotation introspection)进行优化
- 在精简模式中,针对
@Configuration -demarcated 类使用 proxyBeanMethods 属性,也就是说没有 CGLIB 子类 - 支持对包含常见
ListableBeanFactory 检索方法的工厂方法的注解检测:getBeanNamesForAnnotation , getBeansWithAnnotation , findAnnotationOnBean .
- 使用带有自动装配参数的可调用引用向 Kotlin DSL 注册 Bean
事务管理
- 支持在反应式流发布者(Reactive Streams Publishers)上进行反应式事务管理
- 将
ReactiveTransactionManager SPI 作为 PlatformTransactionManager 的替代方案 - 新增程序化的
TransactionalOperator 以及 @Transactional 集成
- 通过在
@Transactional 方法上的 Vavr Try 返回类型以提供对事务控制的支持
Spring Web MVC
- 新增 "WebMvc.fn" 编程模型,与现有的 "WebFlux.fn" 类似:
详情更新内容请点此查看。 |