【发布时间】:2019-02-27 12:31:53
【问题描述】:
我有一个复合项目处理器,如下所示
<bean id="compositeItemProcessor" class="org.springframework.batch.item.support.CompositeItemProcessor">
<property name="delegates">
<list>
<bean class="com.example.itemProcessor1"/>
<bean class="com.example.itemProcessor2"/>
<bean class="com.example.itemProcessor3"/>
<bean class="com.example.itemProcessor4"/>
</list>
</property>
</bean>
我遇到的问题是,在 itemProcessor4 中,我需要 itemProcessor1 和 itemProcessor3 的值。
我已经研究过使用 Step Execution Context 但这不起作用,因为这是在一个步骤内。我也看过在 ItemProcessor1 中使用 @AfterProcess 但这不起作用,因为它直到 ItemProcessor4 之后才被调用。
在compositeItemProcessor 中的委托之间共享数据的正确方法是什么?
在commit-interval设置为1的情况下,是否使用util:map在itemProcessor1中更新,在itemProcessor4中读取的解决方案?
【问题讨论】:
标签: spring spring-batch