创建Java批处理作业时,是否可以在多个流程元素中重用step元素?

时间:2018-07-10 15:33:36

标签: spring-batch java-batch

我正在创建XML,它将定义一个相对简单的Java Batch Job(请参阅JSR 352)。

我的工作有三个步骤,我想提供一种功能,使用户可以动态地决定他们是否要执行所有三个步骤,或者只是执行第一步,或者只是执行第二步,或者只是执行第一步,然后执行第三步,或者只是第二步和第三步,等等,等等。本质上,我想为用户提供按顺序运行步骤子集的所有可能组合。

我很困惑的是在作业xml中定义此行为。我有一个javax.batch.api.Decider的实现,它将根据用户想要执行的操作返回一个特定值。

我的决定者XML如下所示:

yAxis

我在想最好的方法是使用几个... <decision id="jobDecisionTree" ref="MyDecider"> <next on="default" to="defaultFlow"/> <next on="stepOneOnly" to="stepOneOnlyFlow"/> ... </decision> ... 元素来定义不同的可能性。例如,以下是我可以定义的两个可能的流元素:

<flow>

问题在于,我不想一遍又一遍地键入所有步骤,因为我的步骤比这里介绍的要复杂得多。我有每个步骤的分区和属性,如果我不得不在整个作业xml文件中多次重复每个步骤的完整定义,那么冗余xml的数量将是巨大的。

有没有一种方法可以仅从流元素中引用步骤,而不必每次都完全定义它?

0 个答案:

没有答案
相关问题