Java 使用apache commons net恢复服务器到服务器的FTP传输

Java 使用apache commons net恢复服务器到服务器的FTP传输,java,ftp,apache-commons-net,Java,Ftp,Apache Commons Net,我正在重构一个JavaEE应用程序,它使用ApacheCommonsNetFTP库来简化FTP 两台服务器之间的传输。该代码与作为示例发布在web上的代码几乎相同 页 正在传输的文件有时超过60 gb,即使超时设置得很高, 最大的传输是通过局域网进行的,我仍然看到一些例外 我一直在想如何在FTP中实现REST功能,即恢复传输。这个 服务器支持它,所以它只需要使用commons实现。 到目前为止,我已经收集到需要使用getRestartOffset和setRestartOffset。 我还无法在网

我正在重构一个JavaEE应用程序,它使用ApacheCommonsNetFTP库来简化FTP 两台服务器之间的传输。该代码与作为示例发布在web上的代码几乎相同 页 正在传输的文件有时超过60 gb,即使超时设置得很高, 最大的传输是通过局域网进行的,我仍然看到一些例外

我一直在想如何在FTP中实现REST功能,即恢复传输。这个 服务器支持它,所以它只需要使用commons实现。 到目前为止,我已经收集到需要使用getRestartOffset和setRestartOffset。 我还无法在网上找到任何资源或示例,说明如何在 服务器到服务器的传输,并想知道是否有人有任何指针或示例

编辑: 解决方案
使用user270349建议的解决方案,我能够实现所需的功能,尽管使用REST命令是不可能的。我得到了从目标写入的字节数,设置了目标和源的偏移量,然后使用了库提供的remoteAppend(字符串文件名)方法,而不是remoteStore(字符串文件名)这在上面链接的示例中使用。

服务器->客户端下载恢复和服务器->服务器传输恢复之间的唯一区别是如何获得restarofset。您需要列出目标目录中的文件(在您的情况下是远程的),并使用部分文件大小作为下一次尝试的偏移量。

谢谢。这似乎是一个合理的方法。您知道是否应该在源和目标上指定偏移量吗?我认为您是正确的,因为从服务器的角度来看,您正在恢复下载和上载。