两个工具类依赖的jar包:

FTPTool.java

public static void main(String[] args) throws Exception{
        FTPTooL ftpTool = new FTPTooL();
        FTPClient ftpClient  = null;
        InputStream stream = null;
        stream = StreamTool.getStreamFromString(StreamTool.streamStr);

        try{
            String host = "10.16.55.21";//ip
            int port = 21;                //port
            String username = "zssys";//user
            String password = "zssys";//password

            ftpClient = ftpTool.createFtpClient(host, port, username, password,null,null);
            ftpTool.mkdir    ("/home/zstest/dvlp/pic_test/underwrt_pic/test/", "123/456/789", ftpClient);//建目录
            ftpTool.upload    ("/home/zstest/dvlp/pic_test/underwrt_pic/test/", "D:/temp/","HousingEstateManagerment.rar", ftpClient);//上传
            ftpTool.upload    ("/home/zstest/dvlp/pic_test/underwrt_pic/test/", stream,"ddd.PNG", ftpClient);//上传
            ftpTool.download    ("/home/zstest/dvlp/pic_test/underwrt_pic/test/", "ddd.PNG", "D:/temp/haha/","download.PNG", ftpClient);//下载
            ftpTool.delete    ("/home/zstest/dvlp/pic_test/underwrt_pic/test/", "delete.txt", ftpClient);//删除
        }catch(Exception e){
            e.printStackTrace();
        }finally{
            ftpTool.disconnect(ftpClient);
        }
    }

SFTPTool.java

public static void main(String[] args) throws Exception{
        SFTPTooL sfTool = new SFTPTooL();
        Session session = null;
        ChannelSftp channel = null;
        InputStream stream = null;
        stream = StreamTool.getStreamFromString(StreamTool.streamStr);

        try{
            String host = "10.15.22.120";//ip
            int port = 22;                //port
            String username = "weblogic";//user
            String password = "weblogic";//password
            session = sfTool.getSession(host, port, username, password);
            channel = sfTool.getConnect(session);
            sfTool.mkdir    ("/data/temp/test/", "123/888/789", channel);//建目录
            sfTool.upload    ("/data/temp/test/", "D:/temp/","HousingEstateManagerment.rar", channel);//上传
            sfTool.upload    ("/data/temp/test/", stream,"ddd.PNG", channel);//上传
            sfTool.download    ("/data/temp/test/", "download.txt", "D:/temp/haha/","download.txt", channel);//下载
            sfTool.delete    ("/data/temp/test/", "delete.txt", channel);//删除
        }catch(Exception e){
            e.printStackTrace();
        }finally{
            sfTool.disconnect(channel,session);
        }
    }

SFTPTool 和 FTPTooL.java的更多相关文章

  1. Spark案例分析

    一.需求:计算网页访问量前三名 import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} /* ...

  2. edtftpj让Java上传FTP文件支持断点续传

    在用Java实现FTP上传文件功能时,特别是上传大文件的时候,可以需要这样的功能:程序在上传的过程中意外终止了,文件传了一大半,想从断掉了地方继续传:或者想做类似迅雷下载类似的功能,文件太大,今天传一 ...

  3. 故障重现(内存篇2),JAVA内存不足导致频繁回收和swap引起的性能问题

    背景起因: 记起以前的另一次也是关于内存的调优分享下   有个系统平时运行非常稳定运行(没经历过大并发考验),然而在一次活动后,人数并发一上来后,系统开始卡. 我按经验开始调优,在每个关键步骤的加入如 ...

  4. Elasticsearch之java的基本操作一

    摘要   接触ElasticSearch已经有一段了.在这期间,遇到很多问题,但在最后自己的不断探索下解决了这些问题.看到网上或多或少的都有一些介绍ElasticSearch相关知识的文档,但个人觉得 ...

  5. 论:开发者信仰之“天下IT是一家“(Java .NET篇)

    比尔盖茨公认的IT界领军人物,打造了辉煌一时的PC时代. 2008年,史蒂夫鲍尔默接替了盖茨的工作,成为微软公司的总裁. 2013年他与微软做了最后的道别. 2013年以后,我才真正看到了微软的变化. ...

  6. 故障重现, JAVA进程内存不够时突然挂掉模拟

    背景,服务器上的一个JAVA服务进程突然挂掉,查看产生了崩溃日志,如下: # Set larger code cache with -XX:ReservedCodeCacheSize= # This ...

  7. 死磕内存篇 --- JAVA进程和linux内存间的大小关系

    运行个JAVA 用sleep去hold住 package org.hjb.test; public class TestOnly { public static void main(String[] ...

  8. 【小程序分享篇 一 】开发了个JAVA小程序, 用于清除内存卡或者U盘里的垃圾文件非常有用

    有一种场景, 手机内存卡空间被用光了,但又不知道哪个文件占用了太大,一个个文件夹去找又太麻烦,所以我开发了个小程序把手机所有文件(包括路径下所有层次子文件夹下的文件)进行一个排序,这样你就可以找出哪个 ...

  9. Java多线程基础学习(二)

    9. 线程安全/共享变量——同步 当多个线程用到同一个变量时,在修改值时存在同时修改的可能性,而此时该变量只能被赋值一次.这就会导致出现“线程安全”问题,这个被多个线程共用的变量称之为“共享变量”. ...

随机推荐

  1. 关闭oom killer

    最近有位 VPS 客户抱怨 MySQL 无缘无故挂掉,还有位客户抱怨 VPS 经常死机,登陆到终端看了一下,都是常见的 Out of memory 问题.这通常是因为某时刻应用程序大量请求内存导致系统 ...

  2. 用canvas实现图片滤镜效果

    1.灰度效果 图片过滤效果之灰度效果 算法及原理: .299 * r + .587 * g + .114 * b; 2.油画效果 算法及原理: 用当前点四周一定范围内任意一点的颜色来替代当前点颜色,最 ...

  3. php 获取301 302的真实地址

    function getRealURL($url){ $header = get_headers($url,1); if (strpos($header[0],'301') || strpos($he ...

  4. spring security的标签库

    应用标签库:<%@ taglib prefix='security ' uri='http://www.springframework.org/security /tags' %> < ...

  5. web.xml整合s2sh内容

    <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http:// ...

  6. 基于CentOS与VmwareStation10搭建Oracle11G RAC 64集群环境:2.搭建环境-2.7. 配置资源与参数

    2.7.配置资源与参数 2.7.1. 修改主机名称 [root@linuxrac1 ~]# cd /etc/sysconfig [root@linuxrac1 sysconfig]# vi netwo ...

  7. Shell教程3-Shell特殊变量

    前面已经讲到,变量名只能包含数字.字母和下划线,因为某些包含其他字符的变量有特殊含义,这样的变量被称为特殊变量. 例如,$ 表示当前Shell进程的ID,即pid,看下面的代码:   $echo $$ ...

  8. Javascript中的Keycode值列表

    关于如何得到一个键在Javascript中的Keycode值,可以参考: <body onkeypress=alert(event.keyCode)>请按任意键,你将得到该键的键值! ke ...

  9. 深入理解Linux内核-第七章 进程调度

    原文:http://blog.csdn.net/sailor_8318/article/details/2460177

  10. sqlite3使用简介(内含解决sqlite内存的方法)

    一.使用流程 要使用sqlite,需要从sqlite官网下载到三个文件,分别为sqlite3.lib,sqlite3.dll,sqlite3.h,然后再在自己的工程中配置好头文件和库文件,同时将dll ...