两个工具类依赖的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. datagridview的某些属性以及增删改查

    private void button1_Click(object sender, EventArgs e) //查询 { dataGridView1.AutoGenerateColumns = fa ...

  2. HDU 1240 (简单三维广搜) Asteroids!

    给出一个三维的迷宫以及起点和终点,求能否到大终点,若果能输出最短步数 三维的问题无非就是变成了6个搜索方向 最后强调一下xyz的顺序,从输入数据来看,读入的顺序是map[z][x][y] 总之,这是很 ...

  3. xcode快捷键的使用

    1.统计Xcode项目代码行数 1   打开终端. 2  用ls和cd进到你项目的路径. 3   输入下面的指令: grep -r "\n" classes | wc -l (cl ...

  4. zipline tradingcalendar

    zipline/utils/ tradingcalendar.py tradingcalendar_bmf.py 巴西商品期货交易所 tradingcalendar_lse.py 伦敦证券交易所 tr ...

  5. (六) 6.2 Neurons Networks Backpropagation Algorithm

    今天得主题是BP算法.大规模的神经网络可以使用batch gradient descent算法求解,也可以使用 stochastic gradient descent 算法,求解的关键问题在于求得每层 ...

  6. Github托管代码步骤

    总结一下Github上项目托管步骤: Step 1:注册Github帐号,并创建一个repository,假如仓库名为test: Step 2:安装本地Git: sudo apt-get instal ...

  7. 剑指offer-第三章高质量的代码(输出该链表中倒数第K个节点)

    题目:输入一个链表,输出这个链表中倒数第K个节点.(代码的鲁棒性) 思路:用两个指针p1和p2,都指向头节点,开始的时候,p2不动,p1移动k-1次,指向第k个节点.此时,如果p1->next! ...

  8. 简单的聊天程序,主要用到的是Socket

    服务端: import java.io.*; import java.net.*; import java.util.*; public class ChatServer { boolean stat ...

  9. XSS 前端防火墙(3):无懈可击的钩子

    昨天尝试了一系列的可疑模块拦截试验,尽管最终的方案还存在着一些兼容性问题,但大体思路已经明确了: 静态模块:使用 MutationObserver 扫描. 动态模块:通过 API 钩子来拦截路径属性. ...

  10. 计算器显示e-005什么意思

    计算器显示e-005什么意思 1e-005是科学表达式,即 =1e-5 =0.00001e+005就是乘以10的5次方 就是-1.4989*10^5 这是科学计数法(也叫指数计数法)   这是科学计数 ...