使用spring integration ftp support将文件从ftp Server传输到另一个ftp服务器

时间:2015-03-21 14:34:25

标签: java spring ftp spring-integration ftp-server

我是Spring的新手,我目前正致力于与ftp支持的Spring集成。

  • 我从本地目录转移到服务器(filZilla)。
  • 我从服务器下载了文件,很好。

但我想找到如何将文件从FTP服务器传输到另一台FTP服务器,以及是否可以在不从服务器下载文件的情况下读取文件。

2 个答案:

答案 0 :(得分:1)

如果您的意思是获取文件并将其发送到另一台服务器而不将其写入本地文件系统,那么,不,目前无法使用标准组件。

但是,您可以使用两个FtpRemoteFileTemplate(使用execute方法)将数据从InputStream流式传输到OutputStream

答案 1 :(得分:0)

FtpRemoteFileTemplate server1;
FtpRemoteFileTemplate server2
server1.get("filetotransfer", new InputStreamCallback() {
    @Override
    public void doWithInputStream(final InputStream stream) throws IOException {
        server2.executeWithClient(new ClientCallback<FTPClient, Void>() {
            @Override
            public Void doWithClient(final FTPClient client) {
               try (final OutputStream outStream = client.storeFileStream("filedestination");) {
                   IOUtils.copyLarge(stream, outputStream)
               }
        }
    }
});