Java 将处理器应用于多个项目,而不是Spring btach中的一个项目

Java 将处理器应用于多个项目,而不是Spring btach中的一个项目,java,spring-batch,Java,Spring Batch,在我的一个批处理中,我需要调用一个web服务来从数据库中读取的项中充实一些数据,检查一些值,然后将这个充实项写入另一个表中。 我的web服务可以在同一个调用中支持多个请求,以尽量减少对web服务的调用次数。实际上,我的web服务调用被定义为一个处理器: <batch:tasklet task-executor="taskExecutor"> <batch:chunk reader="bookingReader" processor="bookingEnrichWSProce

在我的一个批处理中,我需要调用一个web服务来从数据库中读取的项中充实一些数据,检查一些值,然后将这个充实项写入另一个表中。 我的web服务可以在同一个调用中支持多个请求,以尽量减少对web服务的调用次数。实际上,我的web服务调用被定义为一个处理器:

<batch:tasklet task-executor="taskExecutor">
  <batch:chunk reader="bookingReader" processor="bookingEnrichWSProcessor"
    writer="bookingCompositeWriter" commit-interval="10" />
</batch:tasklet>

似乎只有项编写器可以支持使用步骤定义中的属性提交间隔在一次调用中编写多个项

我需要的是用读卡器十个接十个地读取条目,并在将它们再次写入另一个表之前用这十个条目调用ws

在处理器类中可以这样做吗?或者我应该把这个逻辑移植到一个编写器中


感谢我们的帮助

您应该更改读卡器、处理器和写入器:读卡器必须输出一个对象。 此对象可以是列表

然后,处理器将此列表作为参数获取,并可以使用列表中的项目调用WS


最后,作者还将获得一个对象列表。你写的。不要忘记删除提交间隔:由于您只处理一个对象(10个元素的列表),您可以将提交间隔设置为1(如果要写入10个元素)。

您应该更改读卡器、处理器和写入器:读卡器必须输出一个对象。 此对象可以是列表

然后,处理器将此列表作为参数获取,并可以使用列表中的项目调用WS

最后,作者还将获得一个对象列表。你写的。不要忘记删除提交间隔:因为您只处理单个对象(10个元素的列表),所以将提交间隔设置为1(如果您想写入10个元素)