Spring Batch 5.0.0-M8 已发布。
Spring Batch 是一个轻量级且功能全面的批处理框架,使用 Spring 和 Java 编写离线和批处理应用程序,旨在为开发对企业系统日常运行至关重要的批处理应用程序提供支持。
此版本包含两个主要变化:
- 引入新的默认执行环境序列化格式
在这个里程碑版本中,DefaultExecutionContextSerializer
已升级至支持对 Base64 上下文进行序列化/反序列化。
此外,由@EnableBatchProcessing
或DefaultBatchConfiguration
配置的默认ExecutionContextSerializer
已经从JacksonExecutionContextStringSerializer
更改为DefaultExecutionContextSerializer
。Jackson 依赖项被设置为可选状态。为了使用JacksonExecutionContextStringSerializer
, jackson-core
会被添加到 classpath。
- 增强 SystemCommandTasklet 功能
此版本增强了 SystemCommandTasklet 功能,并做了以下改变:
- 引入名为
CommandRunner
的新策略接口,用于从 tasklet 执行中解耦命令执行。该接口的默认实现是JvmCommandRunner
,它使用java.lang.Runtime#exec
API 来运行系统命令。该接口还可以被实现为使用任何其他 API 来运行系统命令 - 运行命令的方法现在支持接受代表命令及其参数的字符串数组,开发者不需要再对命令进行标记或做任何预处理。此项变化使 API 更加直观,而且不容易出错
详情查看 release note。