首页 文章

spring批处理:当reader返回null时停止writer

提问于
浏览
0

我正在使用spring batch 4(注释)并且有一个步骤读取XML文件并写入文本文件 . 在阅读XML之前,我使用了自定义阅读器和简单的平面编写器( spring 批量参考) . 我检查了这个XML是否是一个文件,如果是这样,我处理从XML到文本的转换 . 但是如果文件无效,我会在阅读器中返回 null .

问题是,当我在阅读器中返回 null 时,编写器仍在工作并将空文件放入输出文件夹 . 解决办法是什么?

@Bean public FlatFileItemWriter itemWriter() {
    return  
        new FlatFileItemWriterBuilder<Foo>()
            .name("itemWriter")
            .resource(new FileSystemResource("target/test-outputs/output.txt"))
            .lineAggregator(new PassThroughLineAggregator<>())
            .build();
}

1 回答

相关问题