티스토리 뷰
1. 필요 라이브러리
compile('com.jcraft:jsch:0.1.54') |
* 최신 버젼은 maven repository 에서 확인 가능.
2. 테스트 코드
import com.jcraft.jsch.Channel;
import com.jcraft.jsch.ChannelSftp;
import com.jcraft.jsch.JSch;
import com.jcraft.jsch.JSchException;
import com.jcraft.jsch.Session;
import com.jcraft.jsch.SftpException;
public class MyTest {
/**
* SFTP Upload -> 게시물 원본 http://javacpro.tistory.com/22 참고
* */
public void sftpUploadTest() {
Session session = null;
Channel channel = null;
ChannelSftp channelSftp = null;
// SFTP 서버연결
String url = "192.168.0.100";
String user = "YOUR_SFTP_USER_ID";
String password = "YOUR_SFTP_USER_PASSWORD";
int port = 1234;
File uploadFile = new File("D:\\SFTP_UPLOAD_FILE.EXT");
// JSch 객체 생성
JSch jsch = new JSch();
try {
// 세션객체 생성 ( user , host, port )
session = jsch.getSession(user, url, port);
session.setPassword(password);
// 세션관련 설정정보 설정
java.util.Properties config = new java.util.Properties();
config.put("StrictHostKeyChecking", "no"); // 호스트 정보 검사하지 않는다.
session.setConfig(config);
session.connect();
// sftp 채널 접속
channel = session.openChannel("sftp");
channel.connect();
} catch (JSchException e) {
// e.printStackTrace();
System.out.println(e.toString());
}
channelSftp = (ChannelSftp) channel;
// upload("./dat/", new File("C:\\Users\\jhkim1981\\Desktop\\20181102_TEST_UPLOAD.txt"));
FileInputStream in = null;
try{ //파일을 가져와서 inputStream에 넣고 저장경로를 찾아 put
in = new FileInputStream(uploadFile);
channelSftp.cd("/home/freecatz/upload");
channelSftp.put(in, uploadFile.getName());
}catch(SftpException e){
// e.printStackTrace();
System.out.println(e.toString());
}catch(FileNotFoundException e){
// e.printStackTrace();
System.out.println(e.toString());
}finally{
try{
in.close();
} catch(IOException e){
// e.printStackTrace();
System.out.println(e.toString());
}
}
}
}
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- web
- 엘리스센터
- Linux
- json parse
- Compile
- SSL
- Fun
- devel
- Review
- place
- HTTP
- dart
- Java
- food
- development
- Security
- gpkiapi
- samba
- springboot
- kotlin
- Spring
- Mobile
- Android
- 맛집
- TIP
- JavaScript
- ssh
- devtools
- Flutter
- MySQL
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
글 보관함