jsch 深入浅出(二)

系统 1498 0

 

在上面一个帖子里就简单介绍了如何基于jsch实现ssh.

下面就简单介绍一下如何实现FTP的功能通过JSCH.

      public class JftpHandler extends JschHandler {
	private static final Logger log = LoggerFactory
			.getLogger(JftpHandler.class);

	private ChannelSftp sftp = null;

	public JftpHandler(String username, String host, int port, String identity) {
		super(username, host, port, identity);
	}

	public JftpHandler(String username, String host, int port, UserInfo userInfo) {
		super(username, host, port, userInfo);
	}

	@Override
	public void init() throws JSchException {
		super.init();
		sftp = (ChannelSftp) session.openChannel(SFTP_PROTOCAL);//sftp
		sftp.connect();
		log.info("Jftp connection success.");
	}

	@Override
	public void destory() {
		if (sftp != null) {
			sftp.quit();
			sftp.disconnect();
		}
		super.destory();

		log.info("Jftp destory success.");
	}

	public void cd(String path) throws SftpException {
		sftp.cd(path);
	}

	public void lcd(String path) throws SftpException {
		sftp.lcd(path);
	}

	public String lpwd() {
		return sftp.lpwd();
	}

	public String pwd() throws SftpException {
		return sftp.pwd();
	}

	public void mkdir(String path) throws SftpException {
		sftp.mkdir(path);
	}

	public void rm(String path) throws SftpException {
		sftp.rm(path);
	}

	public void quit() {
		sftp.quit();
	}

	public void rmdir(String path) throws SftpException {
		sftp.rmdir(path);
	}

	public void exit() {
		sftp.exit();
	}

	public void put(String src, String dst, int mode) throws SftpException {
		sftp.put(src, dst, mode);
	}

	public void put(String src, String dst) throws SftpException {
		put(src, dst, 0);
	}

	public void put(String dst) throws SftpException {
		put(dst, ".");
	}

	public void get(String src, String dst) throws SftpException {
		sftp.get(src, dst);
	}

	public void get(String src) throws SftpException {
		get(src, ".");
	}

	/**
	 * Changes the permissions of one or several remote files.
	 * 
	 * @param permissions
	 * @param path
	 * @throws SftpException
	 */
	public void chmod(int permissions, String path) throws SftpException {
		sftp.chmod(permissions, path);
	}

	/**
	 * @returns the protocol version number supported by this client
	 */
	public String version() {
		return sftp.version();
	}

}
    
  上面的代码只是对JSCH的简单包装,也是对JSCH的抛砖引玉。希望对大家有点用处。。。

 

jsch 深入浅出(二)


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论