Spring Batch 5.0 发布总结
VMware 发布了 Spring Batch 5.0 版本,该版本基于 Java 17 和 Spring Framework 6.0,引入了多项新功能和改进,并修复了大量问题。以下是主要内容和关键信息:
主要更新
基础依赖:
- Spring Batch 5.0 依赖 Spring Framework 6、Spring Integration 6、Spring Data 3、Spring AMQP 3 和 Micrometer 1.10。
- 从
javax.*命名空间迁移到jakarta.*命名空间,标志着对 Jakarta EE 9 的支持。 - 使用 Hibernate 6 作为游标和分页项读取器。
新功能和改进:
- GraalVM 原生镜像支持:Spring Batch 现在支持 GraalVM 原生镜像。
- Observation API:引入了新的 Observation API。
- Java Records 支持:增强了对 Java Records 的支持。
- SAP HANA 和 MariaDB 支持:扩展了对 SAP HANA 的支持,并全面支持 MariaDB。
新类
DefaultBatchConfiguration:- 作为
@EnableBatchProcessing注解的替代方案,提供了默认配置的基础设施 Bean,用户可自定义。 - 用户现在可以通过
JobExplorer接口指定事务管理器并自定义其事务属性。
- 作为
事务管理器变更:
@EnableBatchProcessing注解不再在应用上下文中暴露事务管理器 Bean,避免了以前版本中的无条件行为。- 用户需手动配置任务步骤定义中的事务管理器,以避免 XML 和 Java 配置风格之间的不一致性。
Micrometer 升级:
- Micrometer 升级到 1.10 版本,支持 Batch 追踪和 Batch 指标。
- Spring Batch 现在为每个作业和步骤创建 span,数据可在 Zipkin 等分布式追踪工具中查看。
作业参数处理:
- 使用
JobParameter类处理作业参数,不再局限于长整型、双精度、字符串或日期类型。 - 该变更影响了参数在数据库中的持久化方式。
- 使用
移除的支持:
- 移除了对 SQLFire、JSR-352(Java 平台的批处理应用)和 GemFire 的支持。
总结
Spring Batch 5.0 带来了多项重要更新和改进,包括对 GraalVM 原生镜像的支持、新的 Observation API、Java Records 的增强支持以及对 SAP HANA 和 MariaDB 的全面支持。此外,事务管理器的变更和 Micrometer 的升级也为用户提供了更好的灵活性和可观测性。同时,移除了对部分过时技术的支持,标志着 Spring Batch 的现代化进程。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用。你还可以使用@来通知其他用户。