我正在尝试将 spring-batch 作业(在 xml 中定义)移植到基于 java-config 的作业。
这是我的作业配置文件的片段:
<decision id="decision" decider="someDecider">
<next on="continue" to="stepCont" />
<next on="timeout" to="stepTimeout" />
<end on="COMPLETED" />
</decision>
<step id="stepCont" next="stepReport">
... do something
</step>
<step id="stepReport" next="decision">
... create report
</step>
<step id="stepTimeout">
...
</step>
有没有办法用 spring-java-config 创建这样的循环?
我已开始:
.get("myJob")
.start(someStepBefore())
.next(someDecider).on("timeout").to(stepTimeout())
.from(someDecider).on("continue").to(stepCont())
.from(someDecider).on("COMPLETED").end().build()
.build();
它一定是这样的:
.get("myJob")
.start(someStepBefore())
.next(someDecider).on("timeout").to(stepTimeout())
.from(someDecider).on("continue").to(stepCont()).next(someDecider)...
.from(someDecider).on("COMPLETED").end().build()
.build();
我的工作就像循环流样本 https://github.com/spring-projects/spring-batch/blob/master/spring-batch-samples/src/main/resources/jobs/loopFlowSample.xml。没有xml怎么实现呢?
这个怎么样 :
FlowBuilder<Flow> flowBuilder = new FlowBuilder<Flow>("flow1");
Flow flow = flowBuilder
.start(importPersonStep)
.next(loopDecider)
.on("CONTINUE")
.to(importPersonStep)
.from(loopDecider)
.on("COMPLETED")
.end()
.build();
return jobs.get("importUserJob")
.incrementer(new RunIdIncrementer())
.start(flow)
.end()
.build();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)