Spring batch Spring在writer之前批量链接读卡器和处理器
我希望在Spring batch中实现以下链: (A) ItemReader[第一个输入]->(A)ItemProcessor[第一个输入]->(B)ItemReader[使用处理后的输入从另一个源收集第二个输入]->(B)ItemProcessor[使用处理后的第一个输入和第二个输入]->{repeat B}->ItemWriter(最终结果) 有人知道如何在春季批量生产中做到这一点吗?Spring batch Spring在writer之前批量链接读卡器和处理器,spring-batch,chaining,Spring Batch,Chaining,我希望在Spring batch中实现以下链: (A) ItemReader[第一个输入]->(A)ItemProcessor[第一个输入]->(B)ItemReader[使用处理后的输入从另一个源收集第二个输入]->(B)ItemProcessor[使用处理后的第一个输入和第二个输入]->{repeat B}->ItemWriter(最终结果) 有人知道如何在春季批量生产中做到这一点吗? 谢谢。我看这里没有问题。您只需将处理A的结果存储到某个存储器中,并在(B)ItemReader中读取它 这
谢谢。我看这里没有问题。您只需将处理A的结果存储到某个存储器中,并在
(B)ItemReader
中读取它
这里的主要问题是,您是否希望自己的工作可以重新启动
- 如果没有,您可以将中间结果存储在内存中的哈希映射或其他任何内容中
- 如果您希望它是可重新启动的(例如,故障保护),那么最好使用一些持久性存储
- 我不推荐这种方法。我推荐一种更简单的方法:
(A) ItemReader[第一个输入]->(A)ItemProcessor[第一个输入]->(B)ItemProcessor[将第一个输入转换为第二个输入]->(B)ItemProcessor[使用处理过的第一个输入和第二个输入]->{repeat B}->ItemWriter(最终结果)
ItemProcessor
可用于充实或转换。您流中的B读取器我将替换为将第一个输入转换为第二个输入的ItemProcessor
。谢谢。你能给我举个类似的例子吗?我想我会使用JobExecution或者StepExecution来存储pas结果。谢谢Michael的回答。今天我一直在看你的一本书(好书:)。但是我找不到类似的链接步骤的场景。那么,有效地说,您使用(B)ItemProcessor作为阅读器?我问这个问题是因为我有一个类似的情况(使用REST进行读取),我需要根据第一次读取中检索到的信息进行多次读取……我编写了一些代码来说明基于spring bot-batch示例的步骤链接。