Spring batch 如何在Spring批处理中写入每个项目后执行更新?

Spring batch 如何在Spring批处理中写入每个项目后执行更新?,spring-batch,Spring Batch,我正在做一个数据库读取和数据库写入的spring任务。它运转良好。工后处理方法也得到了很好的执行。但我的要求是,在每次插入条目后,我需要更新源数据库中的标志。我们如何才能做到这一点 如果插入的数据包含一些用于识别插入发生的数据(插入日期、状态标志等),您可以运行一个简单的命令,该命令执行一个更新语句,如 update .... set flag = flag.value where insert.date = .... 考虑使用具有2个委托编写器的- 委托编写器1-执行插入目标数据库的操作

我正在做一个数据库读取和数据库写入的spring任务。它运转良好。工后处理方法也得到了很好的执行。但我的要求是,在每次插入条目后,我需要更新源数据库中的标志。我们如何才能做到这一点

如果插入的数据包含一些用于识别插入发生的数据(插入日期、状态标志等),您可以运行一个简单的命令,该命令执行一个更新语句,如

update .... 
set flag = flag.value 
where insert.date = ....
考虑使用具有2个委托编写器的-

  • 委托编写器1-执行插入目标数据库的操作
  • 委托编写器2-更新源数据库中的状态
  • 如果确实需要在每次插入后提交,则需要将步骤的提交间隔设置为1。请记住,将提交间隔设置为1意味着性能非常低-因此,除非有令人信服的原因,否则不要将提交间隔设置为1