import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import org.apache.commons.net.ftp.FTP;
import org.apache.commons.net.ftp.FTPClient;
/**
* 작성자 : 어셈블링블링
* 설명 : ftp를 이용한 파일전송.
*/
public class FileUploadFtpClient {
FTPClient ftpClient = null;
//생성자를 통해 ftp 설정을 한다.
public FileUploadFtpClient(String url, int port, String id, String pw){
this.ftpClient = new FTPClient();
try {
ftpClient.connect(url, port);
ftpClient.login(id, pw);
ftpClient.enterLocalPassiveMode();
ftpClient.setFileType(FTP.BINARY_FILE_TYPE);
}catch (IOException ex) {
//System.out.println("Error: " + ex.getMessage());
ex.printStackTrace();
}
}
//경로, 파일명, 파일을 받아 해당 경로에 파일을 파일명으로 저장한다.
public boolean put(String path, String file_name, File file){
boolean bReault = false;
InputStream inputStream = null;
try {
//경로를 / 구분
String path_arr[] = path.split("/");
for(int i = 0 ; i < path_arr.length ; i++){
String directory = path_arr[i];
if(directory != null && directory.length() > 0){
//경로를 찾아 들어 간다.
//경로가 없는 경우 경로 생성
if(!ftpClient.changeWorkingDirectory(directory)){
ftpClient.makeDirectory(directory);
ftpClient.changeWorkingDirectory(directory);
}else{
ftpClient.changeWorkingDirectory(directory);
}
}
}
inputStream = new FileInputStream(file);
//저장하고 경과 리턴받음.
bReault = ftpClient.storeFile(file_name, inputStream);
//System.out.println("bReault" + " : " + bReault);
}catch (IOException ex) {
bReault = false;
//System.out.println("Error: " + ex.getMessage());
ex.printStackTrace();
}finally{
if(inputStream != null){
try {
inputStream.close();
} catch (IOException e) {
e.printStackTrace();
}
}
disconnect();
}
return bReault;
}
//ftp 연결을 해제한다.
public void disconnect(){
try {
if (ftpClient.isConnected()) {
ftpClient.logout();
ftpClient.disconnect();
}
} catch (IOException ex) {
ex.printStackTrace();
}
}
}
댓글좀.....달아주세용~~
2016년 12월 25일 일요일
피드 구독하기:
댓글 (Atom)
[oracle]백업및 복구
[oracle]백업및 복구 오라클 덤프 백업및 복구 윈도우 서버 기반 간단 정리 --디렉터리 조회 sqlplus 또는 dbtool 입력시작 SELECT * FROM DBA_DIRECTORIES ; --D:...
-
수십대의 서버에 특정 쉘을 실행한다거나 파일을 수정해야할경우 호스트 입력 아이디 입력 패스워드 입력은 여간 짜증나는일이 아닐수 없다. 이를 한방에 해주는 방법 teraterm 를 설치한다( putty 는 버리자 ) 예를 들면 19...
-
pom.xml <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId...
-
notice_state 란 이름의 체크박스가 있다 가정하고 $("input[name=notice_state]").bind("click",false); 끝.
잘 보았습니다 서버는 어떻게하나염 ????
답글삭제