有没有办法避免使用 Spring Batch 处理同一个文件两次?
Is there anyway to avoid processing same file twice with Spring Batch?
我正在处理 3 个步骤 Spring 批处理项目。首先从ftp下载需要的文本文件到本地,然后处理,最后每隔10分钟删除本地目录下的文件。并且每 10 分钟就会在 FTP 中加载新文件。如果 FTP 中出现问题并且它不加载新文件怎么办?然后 Spring 批处理项目下载相同的文件并再次处理它。所以我的问题是如何避免 Spring 批处理同一个文件两次?
编辑:我使用 Apache 通用库从 FTP 下载文件。
我正在使用 MultiResourceItemReader 在每个 运行.
处提取 2 个文本文件
我会使用文件名作为作业参数。这将为每个文件创建一个作业实例。
现在由于 Spring 批处理阻止 运行 同一作业实例多次完成,因此每个文件将只处理一次,您可以通过设计避免处理同一文件两次。
我正在处理 3 个步骤 Spring 批处理项目。首先从ftp下载需要的文本文件到本地,然后处理,最后每隔10分钟删除本地目录下的文件。并且每 10 分钟就会在 FTP 中加载新文件。如果 FTP 中出现问题并且它不加载新文件怎么办?然后 Spring 批处理项目下载相同的文件并再次处理它。所以我的问题是如何避免 Spring 批处理同一个文件两次?
编辑:我使用 Apache 通用库从 FTP 下载文件。 我正在使用 MultiResourceItemReader 在每个 运行.
处提取 2 个文本文件我会使用文件名作为作业参数。这将为每个文件创建一个作业实例。
现在由于 Spring 批处理阻止 运行 同一作业实例多次完成,因此每个文件将只处理一次,您可以通过设计避免处理同一文件两次。