领先一步
VMware 提供培训和认证,以加速您的进步。
了解更多我代表团队和所有贡献者,很高兴地宣布 Spring Batch 5.0.0-M8
现已从我们的 里程碑存储库 提供。
在这个里程碑版本中,我们引入了两个主要更改
这篇博文将详细介绍这两个主要更改。有关完整更改列表,请查看 发行说明。
在这个里程碑版本中,DefaultExecutionContextSerializer
已更新为将上下文序列化/反序列化为/从 Base64。
此外,由@EnableBatchProcessing
或 DefaultBatchConfiguration
配置的默认ExecutionContextSerializer
已从JacksonExecutionContextStringSerializer
更改为DefaultExecutionContextSerializer
。对 Jackson 的依赖已变为可选。为了使用JacksonExecutionContextStringSerializer
,应将jackson-core
添加到类路径中。
在这个版本中,SystemCommandTasklet
进行了改进,更改如下:
引入了一个名为CommandRunner
的新策略接口,以便将命令执行与任务执行分离。默认实现是JvmCommandRunner
,它使用java.lang.Runtime#exec
API 来运行系统命令。此接口可以实现为使用任何其他 API 来运行系统命令。
现在,运行命令的方法接受一个String
数组,表示命令及其参数。不再需要标记化命令或进行任何预处理。此更改使 API 更直观,并减少了出错的可能性。
我要感谢所有参与此版本的贡献者!在我们继续 Spring Batch 5 的工作时,我们期待您在 Github、Twitter 和 StackOverflow 上提供反馈。