Spring Batch 5.1.0-M3 现已发布!

版本发布 | Mahmoud Ben Hassine | 2023年9月20日 | ...

我谨代表团队以及所有贡献者,很高兴地宣布 Spring Batch 5.1.0-M3 已可在我们的里程碑存储库中获取。

这个新的里程碑引入了以下主要功能:

  • 依赖升级
  • 用于 Redis 的新 Item Reader 和 Writer
  • JobRegistryBeanPostProcessor 的自动配置
  • 能够通过决策启动 Job 流程
  • 能够提供自定义 JobKeyGenerator
  • 基于 Antora 的新文档

有关完整的更改列表,请查看 发行说明

依赖升级

此里程碑版本将 Spring 依赖项升级到以下版本:

  • Spring Framework 6.1.0-M5
  • Spring Integration 6.2.0-M3
  • Spring Data 3.2.0-M3
  • Spring LDAP 3.2.0-M3
  • Spring AMQP 3.1.0-M1
  • Spring Kafka 3.1.0-M1
  • Micrometer 1.12.0-M3

为 Redis 新增 Item Reader 和 Writer

在 Spring Batch 的上下文中,使用 Redis 的一个典型场景是在作业执行之前/之后填充/清除引用数据缓存。这是一个常见的性能改进模式,在作业执行期间,查询缓存而不是向主数据库发出多个查询非常有用。

在此里程碑版本中,库中内置的 Item Reader 和 Writer 新增了基于 Spring Data RedisRedisItemReaderRedisItemWriter。Reader 可以通过 ScanOptions 配置以扫描要从 Redis 读取的键集。Writer 可以通过 RedisTemplate 配置以将 Item 写入 Redis。

JobRegistryBeanPostProcessor 的自动配置

在 Spring Batch 应用程序中配置 JobOperator 时,有必要将其作业注册到 operator 的 JobRegistry 中。此注册过程要么手动完成,要么通过向应用程序上下文添加 JobRegistryBeanPostProcessor bean 来自动完成。

在此里程碑版本中,Spring Batch 的默认配置(即使用 @EnableBatchProcessing 或扩展 DefaultBatchConfiguration 时)现在会自动在应用程序上下文中注册一个 JobRegistryBeanPostProcessor bean。这简化了配置过程,并改善了使用 JobOperator 时的用户体验。

能够使用 Decision 启动 Job Flow

在使用 XML 配置样式时,由于 decision 元素的存在,可以从 decider 开始作业流程。但是,直到 5.0 版本,使用 Java API 都无法实现相同的流程定义。

此里程碑版本为 JobBuilder API 新增了一个选项,可以使用 JobExecutionDecider 来启动作业流程。这使得两种配置样式更加一致。

能够提供自定义 JobKeyGenerator

默认情况下,Spring Batch 通过计算标识性作业参数的哈希值来标识作业实例。虽然很少需要自定义此识别过程,但 Spring Batch 仍然提供了一个策略接口供用户通过 JobKeyGenerator API 覆盖默认机制。

直到 5.0 版本,如果不创建自定义的 JobRepositoryJobExplorer,就无法提供自定义的键生成器。在此版本中,现在可以通过 JobRepositoryJobExplorer 的工厂 Bean 提供自定义的 JobKeyGenerator

基于 Antora 的新文档

参考文档已更新,以使用 Antora。此次更新引入了多项改进,包括但不限于:

  • 多版本文档:现在可以通过左侧菜单中的版本下拉列表在不同版本之间进行导航。
  • 集成的搜索体验:由 Algolia 提供支持,通过页面左上角集成的搜索框,搜索体验得到了提升。
  • 改进的配置样式切换:用于切换代码片段的 XML 和 Java 配置样式的切换器现在位于每个示例附近,而不是页面顶部。

您可以在 此处 查看新文档版本。

下一步是什么?

分享您的反馈!

首先,我想感谢所有为此版本做出贡献的贡献者!您可以尝试将 Spring Batch 5.1.0-M3 与 Spring Boot 3.2.0-M3 一起使用。我们计划于 2023 年 11 月晚些时候发布 Spring Batch 5.1 GA。

我们期待您在 Github IssuesGithub DiscussionsTwitterStackOverflow 上提供反馈。

升级到 Spring Batch 5

我想提醒我们的用户,Spring Batch 4.3.x 将于 2023 年 11 月 18 日停止 OSS 支持。请尽快考虑将您的应用程序升级到 Spring Batch 5。您可以 此处 找到迁移到 v5 的指南。

如果您在将现有应用程序迁移到 Spring Batch 5 时需要帮助,请随时通过 Github 联系 Spring Batch 团队!

Spring Batch 主页|Github 源码|参考文档

获取 Spring 新闻通讯

通过 Spring 新闻通讯保持联系

订阅

领先一步

VMware 提供培训和认证,助您加速进步。

了解更多

获得支持

Tanzu Spring 提供 OpenJDK™、Spring 和 Apache Tomcat® 的支持和二进制文件,只需一份简单的订阅。

了解更多

即将举行的活动

查看 Spring 社区所有即将举行的活动。

查看所有