我使用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);
答案 0 :(得分:0)
如果您的ItemWriter
是FlatFileItemWriter
,则可以将属性shouldDeleteIfEmpty
设置为true,以便在文件为空时不会创建该文件。
<bean class="org.springframework.batch.item.file.FlatFileItemWriter">
<property name="shouldDeleteIfEmpty" value="true"></property>
</bean>
如果您的ItemWriter
是自定义项目编写者,那么您可以应用自己的逻辑来创建文件。
无论哪种方式,它都将进入下一步。