java实现FTP和 SFTP连接远程服务器下载文件

编程入门 行业动态 更新时间:2024-10-09 13:30:39

java实现FTP和 SFTP连接远程<a href=https://www.elefans.com/category/jswz/34/1771423.html style=服务器下载文件"/>

java实现FTP和 SFTP连接远程服务器下载文件

java实现FTP和 SFTP连接远程服务器下载文件

文章目录

  • java实现FTP和 SFTP连接远程服务器下载文件
  • 前言
  • 一、FTP是什么?如何实现。
    • 1.实现代码
  • 二、SFTP是什么?如何实现。
    • 1.代码实现
  • 总结


前言

为什魔写这片文章呢,因为关于ftp和sftp的文章介绍的太少啦 。


提示:以下是本篇文章正文内容,下面案例可供参考

一、FTP是什么?如何实现。

来自百度百科 :文件传输协议(File Transfer Protocol,FTP)是用于在网络上进行文件传输的一套标准协议,它工作在 OSI 模型的第七层, TCP 模型的第四层, 即应用层, 使用 TCP 传输而不是 UDP, 客户在和服务器建立连接前要经过一个“三次握手”的过程, 保证客户与服务器之间的连接是可靠的, 而且是面向连接, 为数据传输提供可靠保证。
FTP允许用户以文件操作的方式(如文件的增、删、改、查、传送等)与另一主机相互通信。然而, 用户并不真正登录到自己想要存取的计算机上面而成为完全用户, 可用FTP程序访问远程资源, 实现用户往返传输文件、目录管理以及访问电子邮件等等, 即使双方计算机可能配有不同的操作系统和文件存储方式。

1.实现代码


public class FtpTools {public static Logger logger = SnowLog.getLogger(FtpTools.class);private static String ftpHost; 										// IPprivate static int ftpPort; 										// portprivate static String ftpUserName; 									// 用户private static String ftpPassword; 									// 密码private static FTPClient ftpClient; 								// IP/*** 初始化ftp信息* @param type* @throws Exception*/public void init(String type) throws Exception {logger.info("***********************初始化FTP信息***********************");String hostMagicId = null;String userNameMagicId = null;String passWordMagicId = null;String cbsPortMagicId=null;if(InterConstants.FTP_CBS_01.equals(type)){hostMagicId = "CBS_HOST";userNameMagicId = "CBS_USERNAME";passWordMagicId = "CBS_PASSWORD";cbsPortMagicId="CBS_PORT";}else{SnowExceptionUtil.throwErrorException("ftp类型非法,初始化ftp信息失败");}TblSysParam selectHost = DBDaos.newInstance().select(TblSysParam.class, "FTP", hostMagicId);if (selectHost == null) {SnowExceptionUtil.throwErrorException("请配置FTP地址!");}ftpHost = selectHost.getParamValueTx();TblSysParam selectPort = DBDaos.newInstance().select(TblSysParam.class, "FTP", cbsPortMagicId);if (selectPort == null) {SnowExceptionUtil.throwErrorException("请配置FTP端口!");}ftpPort = Integer.parseInt(selectPort.getParamValueTx());TblSysParam selectUsername = DBDaos.newInstance().select(TblSysParam.class, "FTP", userNameMagicId);if (selectUsername == null) {SnowExceptionUtil.throwErrorException("请配置FTP用户名!");}ftpUserName = selectUsername.getParamValueTx();TblSysParam selectPassword = DBDaos.newInstance().select(TblSysParam.class, "FTP", passWordMagicId);if (selectPassword == null) {SnowExceptionUtil.throwErrorException("请配置FTP密码!");}ftpPassword = selectPassword.getParamValueTx();}/*** 连接ftp服务* @throws Exception*/public  void connectClient() throws Exception {logger.info("***********************登录FTP***********************");ftpClient = new FTPClient();try {ftpClient = new FTPClient();ftpClient.connect(ftpHost, ftpPort);// 连接FTP服务器ftpClient.login(ftpUserName, ftpPassword);// 登陆FTP服务器//设置编码ftpClient.setControlEncoding("GBK");ftpClient.setBufferSize(8096);if (!FTPReply.isPositiveCompletion(ftpClient.getReplyCode())) {

更多推荐

java实现FTP和 SFTP连接远程服务器下载文件

本文发布于:2024-02-14 02:46:21,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1761848.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:服务器   文件   java   FTP   SFTP

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!