【发布时间】:2021-06-06 19:03:04
【问题描述】:
我正在研究 SpringBatch,在 ItemProcessor 之前启动 Spring 调用 ItemWriter 时出现问题。为什么?
public class PollingReader implements ItemReader<File> {
@BeforeStep
public void beforeStep(StepExecution stepExecution) throws NotDirectoryException {..}
@AfterStep
public ExitStatus afterStep(StepExecution stepExecution) {..}
}
public class PollingWriter implements ItemWriter<File> {
@BeforeStep
public void beforeStep(StepExecution stepExecution) {..}
@AfterStep
public ExitStatus afterStep(StepExecution stepExecution) {..}
..
}
public class PollingProcessor implements ItemProcessor<File, File> {
@BeforeStep
public void beforeStep(StepExecution stepExecution) {..}
@AfterStep
public ExitStatus afterStep(StepExecution stepExecution) {..}
}
并且@AfterStep ItemProcessor 的方法在@AfterStep ItemWriter 方法之前被调用。
我预计 @BeforeStep 会出现这个循环调用:
- ItemReader
- 项目处理器
- ItemWriter
但我有这个结果:
- ItemReader
- ItemWriter
- 项目处理器
对于@AfterStep 我期望:
- ItemWriter
- 项目处理器
- ItemReader.
但我有这个结果:
- 项目处理器
- ItemWriter
- ItemReader
谢谢:)
【问题讨论】:
标签: java spring-boot spring-batch