我想要实现的是 - 我想在执行ItemProcessor.process方法之前调用一个方法 。
如果我使用ItemProcessListener.beforeProcess,则会为ItemReader中读取的每个项调用它。
任何想法,如何实现这一目标? ItemProcessListener的其他替代方法?
答案 0 :(得分:1)
确保方法被调用一次的最佳选择是使用StepExecutionListener
并将此侦听器绑定到您使用ItemProcessor的步骤。
否则,如果您需要在ItemProcessor.process()
之前调用ItemProcessListener
并在StepExecutionContext
中管理标记:如果未设置此标志(false
)或缺席,请调用方法并将标志设置为true
否则什么都不做
但是,如果您可以更准确地了解您的用例,则可以找到更好的解决方案
希望可以帮到你!