티스토리 뷰

FTP Client 구현방법

  • Java 파일 전송 시에 FTP 프로토콜로 FTP Server에 접속하여 파일을 전송하는 기능구현 방법을 공유하고자 한다.

구현방법

  •  FTP Server에 접속하여 대상파일 저장하는 기능이다. 
public void doSend(final String ip,
                       final int port,
                       final String user,
                       final String password,
                       final File file,
                       final String targetDir) throws Exception {
      FTPClient client = new FTPClient();
      try (InputStream input = new FileInputStream(file)) {
        String remoteFilePath = "/" + targetDir + "/" + file.getName();
        client.connect(ip, port);

        //FTP Server 로그인 수행
        if (client.login(user, password)) {
          client.setBufferSize(1000);
          client.enterLocalPassiveMode();
          client.setFileType(FTP.BINARY_FILE_TYPE);
          client.mkd("/" + rootDir);
          try {
            //FTP Server에 파일 저장(전송)
            if (!client.storeFile(remoteFilePath, input)) {
              throw new Exception("File store failed");
            }
          } catch (Exception e) {
            e.printStackTrace();
          }
          
          try {
            //File Move 기능 
            //if (!client.rename(remoteTmp, remoteFilePath)) {
            //  throw new FileStoreFailedException("File Target store failed");
            //}
          } catch (Exception e) {
            e.printStackTrace();
          }

          //FTP 서버 접속 해제
          client.logout();
          client.disconnect();
        } else {
          throw new Exception("Login Failed");
        }
      } catch (Exception e) {
        client.logout();
        client.disconnect();
        throw e;
      }
    }

 


관련글

 

(FileZilla) 파일질라 FTPS(FTP over SSL/TLS) 세팅방법

들어가며 FileZilla를 이용해 FTP Server를 구축할 때 FTPS 프로토콜 세팅 방법을 공유하고자 한다. 설정방법 FTP over SSL/TLS 세팅 Edit -> Settings -> FTP over TLS Settings 선택 Enable FTP over TLS Suppor..

jinseongsoft.tistory.com


끝으로

이 글이 도움이 되었다면, 하단의 Google 광고 👎👎👎 한번씩 클릭 부탁 드립니다. 🙏🙏🙏

광고 클릭은 많은 힘이 됩니다! 

 

반응형
댓글