我只是想知道:在我的 Java 应用程序中,每次我需要连接到 FTP 服务器时,我应该创建一个新的 FTPClient 对象,还是应该创建一个 FTPClient() 对象并在每次连接到一个FTP服务器?
3853 次
3 回答
16
两者都可以,但是 apache commons.net 库不是线程安全的,所以如果您使用一个客户端和多个线程,请注意您必须同步对它的访问。
于 2011-07-31T22:43:01.743 回答
4
如果不确切知道您的代码必须做什么(连接频率、需要传输多少文件等),很难说。
我个人的看法是FTPClient()
,每次你需要做某事时都连接/验证/传输/断开连接(假设两者之间会有合理的差距)。原因是 FTP 会话通常具有相当短的不活动超时。
于 2011-07-31T20:31:16.460 回答
3
重用会更好,因为每次创建新连接时都不需要新实例,即使是到新服务器也是如此。因为 connect 和 disconnect 方法可以为您完成这项工作。
因此,尽可能多地重用对象。
于 2011-07-31T20:29:57.840 回答