Мне просто интересно: в моем приложении Java каждый раз, когда мне нужно подключиться к FTP-серверу, я должен создать новый объект FTPClient или создать один объект FTPClient () и повторно использовать его при каждом подключении к FTP-сервер?
Повторное использование было бы лучше, так как вам не понадобится новый экземпляр каждый раз, когда вы создаете новое соединение, даже на новый сервер. Потому что методы подключения и отключения могут выполнить эту работу за вас.
Поэтому повторно используйте столько объектов, сколько сможете.
Оба будут работать, но библиотеки apache commons.net не являются потокобезопасными , поэтому, если вы используете один клиент с несколькими потоками, имейте в виду, что вам придется синхронизировать доступ к нему.
Не зная точно, что должен делать ваш код (как часто он подключается, сколько файлов ему нужно перевести и т. Д.), Это трудно сказать.
Мое личное мнение было бы одним FTPClient()
но подключаться / аутентифицироваться / переносить / отключать каждый раз, когда вам нужно что-то делать (при условии, что между ними будет разумный разрыв). Причиной является то, что сеансы FTP часто имеют довольно короткие тайм-ауты бездействия.