据我所知,Spring Batch有一个条件执行,可以配置为根据当前步骤的ExitStatus决定下一个步骤,但是......
如果我希望我的Spring Batch作业运行一个查询,我使用哪个结果集来判断我在ItemReader中的查询中的参数值是SpringBatch设置的那个怎么办?
或者Spring Batch框架是否“强制”我为该初始查询设置处理器和编写器?
如果第二个问题的答案是是,如何处理?
答案 0 :(得分:2)
这很简单,您可以使用TaskletStep来运行查询并使用“正常”步骤(读取:读取器,编写器,处理器是可选的),它使用TaskletStep提供的一些值。
要获取从第一步到后一步的值,您可以使用late-binding of job/step attributes,也请参阅此stackoverflow question for interstep communication。
对于“正常”步骤,设置ItemReader和ItemWriter,ItemProcessor是可选的。