【问题标题】:Serverside implementation of FTP in JavaJava中FTP的服务器端实现
【发布时间】:2024-01-14 23:21:01
【问题描述】:

我想建立一个后台没有实际文件的 FTP 服务器。相反,我希望上传到它的文件立即由我的后端处理。上传目录的文件列表应该包含那些尚未处理的文件。删除或移动应该是不可能的。

另外,在下载方面,我想展示我能够交付的那些文件。但文件应根据需要再次由后端创建。

由于我不想重新实现 FTP,有谁知道有助于实现 FTP 协议的服务器端的 Java 库,它可以根据我的需要进行定制吗?

我查看了总是很有帮助的 Jakarta Commons,但他们似乎专注于客户端。

谢谢
迈克
[;-)

【问题讨论】:

  • 为什么需要 FTP?只是如果你要使用 HTTP,这种事情还有很多可用的。
  • 像往常一样,当您构建新东西时,它必须看起来好像没有任何变化。 (并且有许多方使用的现有服务。)

标签: java ftp


【解决方案1】:

查看http://mina.apache.org/ftpserver/

Apache FtpServer 是一个 100% 纯 Java FTP 服务器。它被设计为基于当前可用的开放协议的完整且可移植的 FTP 服务器引擎解决方案。 FtpServer 可以作为 Windows 服务或 Unix/Linux 守护程序独立运行,也可以嵌入到 Java 应用程序中。我们还为 Spring 应用程序内的集成提供支持,并将我们的版本作为 OSGi 包提供。

默认网络支持基于高性能异步 IO 库 Apache MINA。使用 MINA,FtpServer 可以扩展到大量并发用户。

【讨论】:

    【解决方案2】:

    也许你可以使用Apache FtpServer

    The Apache FtpServer is a 100% pure Java FTP server. It's designed to be a complete and portable FTP server engine solution based on currently available open protocols. FtpServer can be run standalone as a Windows service or Unix/Linux daemon, or embedded into a Java application. We also provide support for integration within Spring applications and provide our releases as OSGi bundles.

    【讨论】:

      【解决方案3】:

      上述指向 Java FTP 服务器的链接不起作用,因为它们已移至下方:

      http://mina.apache.org/ftpserver-project/index.html

      【讨论】:

      • 非常感谢您提供的信息,但您应该评论其他答案。 SO FAQ 说:“通过编辑或评论改进帖子”
      • @DerMike 谢谢你的建议..但是我必须编辑三个帖子并对每个帖子发表评论??每一个我不想自己做的帖子都涌入了大量的 cmets。还为其他人创造更多的工作来审查我所做的编辑......当然我正在编辑他们的答案......
      【解决方案4】:

      这里有一对可能会有所帮助:
      http://drftpd.org/
      http://mina.apache.org/ftpserver/

      由于您实际上并不希望文件以通常的 FTP 行为进行传输和列出,因此您需要截获客户端如何列出和检索文件的代码。

      【讨论】: