如果当前批处理步骤输入为空,如何跳到下一批处理步骤

时间:2015-10-22 10:03:03

标签: spring-batch

我使用spring批处理框架创建了一个批处理作业,但如果读者返回null,则批处理作业将创建一个空文件。无论如何要跳到下一步并且不创建文件。

$this->licensePlate = "AA000AA";
$this->fileName = "path/to/file/tmp.zip";
header('Content-Type: application/zip');
header('Content-Disposition: attachment; filename="Foto_'.$this->licensePlate.'.zip"');
readfile($this->fileName);

1 个答案:

答案 0 :(得分:0)

如果您的ItemWriterFlatFileItemWriter,则可以将属性shouldDeleteIfEmpty设置为true,以便在文件为空时不会创建该文件。

<bean class="org.springframework.batch.item.file.FlatFileItemWriter">
    <property name="shouldDeleteIfEmpty" value="true"></property>
</bean>

如果您的ItemWriter是自定义项目编写者,那么您可以应用自己的逻辑来创建文件。

无论哪种方式,它都将进入下一步。