Spring Batch 4.0.0.M5 现已发布

版本发布 | Michael Minella | 2017 年 10 月 24 日 | ...

我们很高兴地宣布 Spring Batch 4.0.0.M5 现已通过 Github 和 Pivotal 下载库提供。此版本代表 Spring Batch 4.0 版本的第五个里程碑。非常感谢所有为本次发布做出贡献的人。

新增功能?

此里程碑继续之前 4.0.0 里程碑中提出的工作。具体更新包括

  • 依赖项更新
  • FunctionItemProcessor
  • 持续更新文档

依赖项更新

随着 Spring Boot 2 依赖关系图的发展,我们一直在更新我们的依赖项以使其与之保持一致。此轮更新包括更新以引入 Spring Framework 5 的 GA 版本以及 Spring Data Kay。Spring Integration 5.0.0.M7 也被引入到此版本中。

FunctionItemProcessor

使用 Java 8 和函数式接口(来自 java.util.function 包)的引入,有必要审查这些接口如何在 Spring Batch 中映射。三个关键接口包括 SupplierFunctionConsumer。此版本提供了一个 ItemProcessor 和相关功能,以启用将 Function 用作 ItemProcessor。示例可能如下所示

...
@Bean
public Function<String, String> upperCaseFunction() {
	return o -> o.toUpperCase();
}

@Bean
public Step step1() {
	return this.stepBuilderFactory.get("step1")
				.<String, String>chunk(10)
				.reader(reader())
				.processor(upperCaseFunction())
				.writer(writer())
				.build();
}
...

请注意,在前面的示例中,实际的 Function 实现没有 Spring Batch 依赖项。我可以创建一个实际上未实现 ItemProcessor 的处理器实现,并将其用作步骤[1]中的处理器。

在 Spring Batch 正式版发布之前,我们将开始研究其他函数式接口及其对 Spring Batch 的适用性。

文档更新

自 Java 配置成为规范以来,Spring Batch 文档尚未进行重大改版。此版本开始过渡文档以解决此问题。您将在以下页面的顶部看到 Java 和 XML 之间的切换。该切换将指示页面中的示例是如何配置的(分别通过基于 Java 的配置或基于 XML 的配置)。当前在此处实现的页面为

  1. Spring Batch 简介
  2. 批处理的领域
  3. 配置和运行作业
  4. 配置步骤
  5. 读取器和写入器

在我们的下一个版本发布之前,我们将完成此迁移,以便 Spring Batch 参考文档中的每个示例都可以通过 Java 配置和 XML 配置两种方式进行说明。

接下来是什么?

展望未来,我们将完成文档更新。我们还将研究其他函数式接口如何融入 Spring Batch。最后,我们将获取 Spring Framework 生态系统其余的最新依赖项,以准备正式版发布。

Spring Batch 4.0.0.M4 发生了什么?

Spring Batch 4.0.0.M4 于上周五发布,其中存在错误,不建议一般使用。4.0.0.M5 是最新的推荐使用里程碑。

您有什么想法?

我们期待您对这些新功能的反馈,您可以在 JiraStackOverflow 或通过 Twitter 直接联系我 @michaelminella

Spring Batch 主页 | GitHub 上的源代码 | 参考文档

[1] 注意:我们知道 ItemProcessorAdapter 存在,并且它提供了另一种方法来实现将不实现 ItemProcessor 的服务用作 ItemProcessor

获取 Spring 新闻通讯

与 Spring 新闻通讯保持联系

订阅

领先一步

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

了解更多

获取支持

Tanzu Spring 在一个简单的订阅中提供对 OpenJDK™、Spring 和 Apache Tomcat® 的支持和二进制文件。

了解更多

即将举行的活动

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

查看全部