public class JschSftpHelper
extends java.lang.Object
JSch SFTP 助手
//实例化JschHelper(可单例)
JschHelper jsch = new JschHelper();
//实例化JschSftpHelper(可单例)
JschSftpHelper helper = new JschSftpHelper();
helper.setJsch(jsch);
helper.setHost("192.168.163.136");
helper.setPort(17799);
helper.setUsername("root");
helper.setPassword("root");
helper.setTimeout(5000);
//创建连接, 执行一系列操作, 关闭连接
String result = helper.command(new JschSftpCommand<String>() {
public String onCommand(ChannelSftp channel) throws SftpException {
//cd
channel.cd("/home/sviolet");
//ls
Vector<ChannelSftp.LsEntry> lsVector = channel.ls("/home/sviolet");
for (ChannelSftp.LsEntry obj : lsVector){
System.out.println(obj.getLongname());
}
//put
channel.put(".\\LICENSE.txt", "/home/sviolet/", ChannelSftp.OVERWRITE);
//get
channel.get("/home/sviolet/LICENSE.txt", ".\\out\\", null, ChannelSftp.OVERWRITE);
//return value
return "succeed";
}
public String onConnectFailed(Throwable t) {
t.printStackTrace();
return "connect failed";
}
public String onException(Throwable t) {
t.printStackTrace();
return "exception";
}
});
System.out.println("result:" + result);
| 构造器和说明 |
|---|
JschSftpHelper() |
| 限定符和类型 | 方法和说明 |
|---|---|
protected com.jcraft.jsch.Session |
buildSession(com.jcraft.jsch.JSch jsch,
java.lang.String username,
java.lang.String password,
java.lang.String host,
int port,
int timeout)
可复写该方法修改Session配置
|
<T> T |
command(JschSftpCommand<T> command)
创建连接, 执行一系列操作, 关闭连接
|
java.lang.String |
getHost() |
com.jcraft.jsch.JSch |
getJsch() |
java.lang.String |
getPassword() |
int |
getPort() |
int |
getTimeout() |
java.lang.String |
getUsername() |
void |
setHost(java.lang.String host) |
void |
setJsch(com.jcraft.jsch.JSch jsch) |
void |
setPassword(java.lang.String password) |
void |
setPort(int port) |
void |
setTimeout(int timeout) |
void |
setUsername(java.lang.String username) |
public <T> T command(JschSftpCommand<T> command)
T - 返回类型command - SFTP操作protected com.jcraft.jsch.Session buildSession(com.jcraft.jsch.JSch jsch,
java.lang.String username,
java.lang.String password,
java.lang.String host,
int port,
int timeout)
throws com.jcraft.jsch.JSchException
com.jcraft.jsch.JSchExceptionpublic com.jcraft.jsch.JSch getJsch()
public void setJsch(com.jcraft.jsch.JSch jsch)
public java.lang.String getHost()
public void setHost(java.lang.String host)
public int getPort()
public void setPort(int port)
public java.lang.String getUsername()
public void setUsername(java.lang.String username)
public java.lang.String getPassword()
public void setPassword(java.lang.String password)
public int getTimeout()
public void setTimeout(int timeout)