我们正在使用带有Spring Framework 4的Spring Batch 3.0.8。我们已经定义了许多要快速连续运行的作业: Job1从远程源加载参考数据,和 Job2根据Job1中加载的参考数据处理CSV输入文件。
通常我们会在操作团队的控制下分别运行Job1和Job2,但是对于自动测试,我们希望将Job1和Job2链接在一起,这样一旦Job1完成处理,它将自动启动Job2。
我们怎么能这样做?
答案 0 :(得分:0)
实现这一目标的最简单方法是通过Spring Batch Job。您可以使用“作业”步骤启动一个作业。完成后,您可以使用另一个来启动第二个。其他机制如使用侦听器可以工作,但在您描述的用例中,我认为这是最有意义的。
答案 1 :(得分:0)
如果您可以添加新工作,还可以查看JobStep
来自它的Javadoc:
委托Job完成工作的步骤。这是一个很棒的工具 用于管理作业之间的依赖关系,以及模块化复杂 将逻辑分成可以孤立测试的东西。工作是 使用可从步骤中提取的参数执行 执行,因此这一步也可以有效地用作工人 并行或分区执行。