java – Spring批处理一次处理多个项目

我们使用
Spring Batch进行一些处理,通过Reader读取一些ID,我们希望通过处理器将它们作为“块”处理,然后写入多个文件.但是处理器接口一次只允许处理一个项目,我们需要进行批量处理,因为处理器依赖于第三方并且不能为每个项目调用服务.

我看到我们可以为’chunk’中涉及的所有Reader-Processor-Writers创建Wrappers来处理List<>并委托一些具体的读者/处理器/作者.但这对我来说似乎并不好.像这样:

   <batch:chunk reader="wrappedReader" processor="wrappedProcessor" writer="wrappedWriter" 
commit-interval="2"/>

是否存在“分块”选项,可以在处理器之前进行分块?而不是作家之前.

干杯,

最佳答案 我建议重新配置你的ItemReader以返回需要处理的“块”,因为它实际上是你正在处理的“项目”.

点赞