弹簧批量配置中步骤顺序和流程之间的区别是什么?

时间:2015-01-13 06:25:38

标签: configuration spring-batch

我正在读春天的文件。

该文件显示了两个不同的例子

5.3.1顺序流

<job id="job">
    <step id="stepA" parent="s1" next="stepB" />
    <step id="stepB" parent="s2" next="stepC"/>
    <step id="stepC" parent="s3" />
</job>

5.3.6外部化作业之间的流定义和依赖

<job id="job">
    <flow id="job1.flow1" parent="flow1" next="step3"/>
    <step id="step3" parent="s3"/>
</job>

<flow id="flow1">
    <step id="step1" parent="s1" next="step2"/>
    <step id="step2" parent="s2"/>
</flow>

使用某些步骤和某些步骤之间的区别是什么?

我很困惑。请帮帮我。

1 个答案:

答案 0 :(得分:7)

第二种形式允许您在另一份工作中重复使用flow1

<job id="job2">
    <flow id="job2.flow1" parent="flow1" next="job2.step3"/>
    <step id="job2.step3" parent="s3"/>
</job>

来自官方文件:

  

定义这样的外部流程的效果就是插入   从外部流入工作的步骤就好像它们一样   声明内联。通过这种方式,许多作业可以引用相同的模板   流动并将这些模板组合成不同的逻辑流程。这是   也是分离个人集成测试的好方法   流动