我需要在项目处理器之间传递与处理项目相关的数据,我不需要保留数据,最好的方法是什么(注意我目前正在使用 StepSynchronizationManager 来访问 stepExecution 并将数据存储在 ExecutionContext 中)。
问问题
4854 次
1 回答
2
是什么让您认为,您的方式(将数据存储在 StepExecutionContext 中)是不好的还是不是最好的方式?
您可以尝试它而不将数据保存在 StepExecution 中,而是更改处理器之间的项目
public class FirstProcessor implements ItemProcessor<String, String> {...}
public class SecondProcessor implements ItemProcessor<String, OtherClass> {
public OtherClass process(String item) throws Exception {
return otherClassObjectWithDataForNextProcessor;
}
}
public class ThirdProcessor implements ItemProcessor<OtherClass, TargetClass> {...}
public class CustomItemWriter implements ItemWriter<TargetClass> {...}
于 2011-08-19T17:08:37.343 回答