如何在处理之前重命名远程文件?

时间:2018-03-05 09:30:01

标签: spring spring-boot spring-integration spring-integration-sftp

我使用spring集成来读取和处理来自ftp服务器的文件。为了使文件不被其他进程处理,应在处理之前重命名该文件。如何使用弹簧集成(弹簧引导)?

非常感谢你的帮助。

2 个答案:

答案 0 :(得分:1)

执行此操作的最佳方法是为不同阶段创建目录:

1)等待处理

2)正在处理

3)错误

4)完成

如果您创建这些目录,那么不同的作业可以执行不同的步骤,一个作业可以将文件下载到“等待处理”,然后进程作业可以将文件移动到“正在处理”,然后成功时它可以移动它到'完成'目录。

here是在java 8中移动文件的最佳方式。

如果多线程可以访问ftp文件,因此无法在本地处理它们,here是使用Apache Commons Net

答案 1 :(得分:0)

  

谢谢你的帮助,但我需要一个弹簧集成解决方案

使用配置了<a href="xxxx" target="blank_" rel="noopener" />. 命令的FTP OutboundGateway,然后mv重命名的文件。