如何解决在Spring Batch中对ItemWriter提交后如何更新源数据的状态
我正在使用ItemReader和分页从源表中获取数据。在ItemProcessor上,我将使用该项目的ID逐一向服务发送一个休息请求,并将其响应传递给ItemWriter,以存储在另一个表中。
在第一次阅读(第1页)时,该块上的每个项目的状态都为UNPROCESSED,然后在处理并保存对另一个表的响应后,我想将当前块中所有项目的状态更新为PROCESSED。
在ItemReader上,我选择所有状态均为UNPROCESSED的项目。 从状态=未处理的表中选择*
我的问题是保存响应后如何更新源表中已处理的每个项目的状态。因为如果更新状态,则由于更新,分页不再正确。第2页将跳过一些项目。
解决方法
正在编写远程服务响应的ItemWriter也可以写回源表。因此,项目编写者应该执行以下操作
- 编写您的Web服务的响应
- 更新状态为已处理的特定商品ID
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。