弹簧批处理 - 无论如何在块之后但在提交之前执行逻辑



在 Spring Batch 中,在块逻辑完成后但在提交/回滚之前执行某种逻辑的正确方法是什么?

afterChunk目前在交易后触发。 如果我想在提交之前进行某种清理怎么办?(例如,清理插入beforeChunk中的一些临时记录)。

我能想到的一种解决方法是使用 CompositeWriter,并将额外的逻辑作为另一个编写器。 但是,这将使维护变得困难,因为我无法组成包含该"额外逻辑"的共享父步骤配置。

您可以使用

ItemWriteListener.afterWrite()

在 ItemWriter.write(java.util.List) 之后调用 这将被称为 在任何事务提交之前,以及之前 ChunkListener.afterChunk(ChunkContext)

相关内容

  • 没有找到相关文章

最新更新