前言
在做一个需要Java后台生成大量的XML文件,上传到FTP服务器上,然后另外一个线程连上FTP一直查询上传的文件夹里面有多少个文件,并把文件名通过WebSocket带到页面上更新页面,同时也可以从FTP服务器上下载文件。。。。。
刚开始认为很简单,用Apache的工具FTPClient来做,结果连接不上FTP服务器,后来发现是我们的FTP服务器只支持SFTP协议。
上代码
最开始走的Ftp协议
1 | package com.lucent.demo.utils; |
考虑到要做一个通用的工具,所以我们的程序应该对用户输入的FTP地址进行协议的判断,然后确定要用FTP还是SFTP。
1 | package com.lucent.demo.utils; |
遇到的问题
做的过程中遇到了一个问题就是,同一个channelSftp,一个线程用它来做 ls 的操作,另外一个线程用它来做 get 的操作,get操作就会报错。我在想是不是不能同时做多个读取或者写入的动作。。。知道的朋友请留言告诉我,谢谢。