本地上传文件到SFTP服务器

代码

需要知道sftp服务器的ip,端口,用户名,密码,上传服务器的文件路径。
方法参数为文件上一级目录和要上传的本地文件路径

public void uploadSftp(String dir, String localFile){try {//1.获取会话JSch jSch = new JSch();Session session = jSch.getSession(sftpUsername, sftpAddress, sftpPort);session.setPassword(sftpPassword);Properties properties = new Properties();properties.put("StrictHostKeyChecking", "no");session.setConfig(properties);session.connect();//2.获取上传通道Channel channel = session.openChannel("sftp");channel.connect();ChannelSftp sftp = (ChannelSftp) channel;//3.上传文件FileInputStream inputStream;try {try {sftp.cd(sftpFileUrl);} catch (SftpException e) {logger.error("切换目录失败");throw new RuntimeException(e);}String dirPath = sftpFileUrl + dir;if (!isDirExist(dirPath, sftp)){sftp.mkdir(dirPath);}sftp.cd(dirPath);inputStream = new FileInputStream(localFile);sftp.put(inputStream, "data.json");} catch (Exception e) {logger.error("上传文件失败");throw new RuntimeException(e);}sftp.disconnect();inputStream.close();channel.disconnect();session.disconnect();logger.info("上传sftp服务器成功");} catch (Exception e) {logger.error("上传sftp服务器失败");throw new RuntimeException(e);}}/*** 判断目录是否存在* @param directory* @return*/public static boolean isDirExist(String directory, ChannelSftp sftp){boolean isDirExistFlag = false;try{SftpATTRS sftpATTRS = sftp.lstat(directory);isDirExistFlag = true;return sftpATTRS.isDir();}catch (Exception e){if (e.getMessage().toLowerCase().equals("no such file")){isDirExistFlag = false;}}return isDirExistFlag;}

参考链接

  • https://blog.csdn.net/weixin_45031612/article/details/123513850
  • https://www.csdn.net/tags/MtTaAg5sMzc3NTIxLWJsb2cO0O0O.html

上传文件到sftp服务器相关推荐

  1. sftp方式从windows上传文件到Linux服务器

    今天我一直用scp想实现从windows上传文件到Linux服务器,但是鼓捣了半天也没有实现.后来查资料才发现,scp实现文件的上传和下载貌似只能在Linux和Linux之间实现.(欢迎指正不对的地方 ...

  2. java使用sftp上传(文件)图片到服务器中

    最近租了一个服务器,想着上线个小项目,结果图片上传卡壳了,自从11号看了一篇文章就入了ftp的坑.研究了十多个小时的ftp文件传输,无果.睡前看到了一篇关于sftp上传文件的文章,抱着试一试的心态,结 ...

  3. 文件怎么上传远程服务器,怎么上传文件到远程服务器

    怎么上传文件到远程服务器 内容精选 换一换 将文件上传至Windows云服务器一般会采用MSTSC远程桌面连接的方式.本节为您介绍本地Windows计算机通过远程桌面连接,上传文件至Windows云服 ...

  4. 使用WinSCP上传文件到指定服务器

    使用WinSCP上传文件到指定服务器 文章目录 使用WinSCP上传文件到指定服务器 前言 安装WinSCP 新建站点 传输文件 实现公网访问 前言 个人认为 FlashFTP是一款十分好用的文件上传 ...

  5. 上传文件到云服务器存储路径,上传文件到云服务器存储路径

    上传文件到云服务器存储路径 内容精选 换一换 云容器引擎需要与其他云服务协同工作,云容器引擎需要获取如下云服务资源的权限. 一个存储库只可以绑定一个备份策略.一个存储库只可以绑定一个复制策略.一个存储 ...

  6. Windows 通过 SecureCRT 8.x 上传文件到Linux服务器

    转载自  Windows 通过 SecureCRT 8.x 上传文件到Linux服务器 1.SecureCRT 连接 Linux 服务器,这一步操作简单: 2.连接并登录成功后,直接在连接成功的页签上 ...

  7. 向服务器上传文件的命令,上传文件到远程服务器的命令

    上传文件到远程服务器的命令 内容精选 换一换 将文件上传至Windows云服务器一般会采用MSTSC远程桌面连接的方式.本节为您介绍本地Windows计算机通过远程桌面连接,上传文件至Windows云 ...

  8. 从手机里上传文件到云服务器,手机如何上传文件到云服务器

    手机如何上传文件到云服务器 内容精选 换一换 已获取该弹性云服务器的密钥文件.弹性云服务器已经绑定弹性IP地址.已配置安全组入方向的访问规则.如果您是在Windows操作系统上登录Linux,可以按照 ...

  9. Git上传本地文件到服务器,git上传文件到远程服务器

    git上传文件到远程服务器 内容精选 换一换 将文件上传至Windows云服务器一般会采用MSTSC远程桌面连接的方式.本节为您介绍本地Windows计算机通过远程桌面连接,上传文件至Windows云 ...

  10. 上传文件到服务器指令,上传文件到远程服务器的命令

    上传文件到远程服务器的命令 内容精选 换一换 将文件上传至Windows云服务器一般会采用MSTSC远程桌面连接的方式.本节为您介绍本地Windows计算机通过远程桌面连接,上传文件至Windows云 ...

最新文章

  1. 用python绘制漂亮的图形-python如何画出漂亮的地图?
  2. 定位插件_微创新 | 开发PL/SQL插件,快速定位所需字段
  3. 使用sed修改最后一行数据
  4. tengine安装问题
  5. 最大流之最长递增子序列问题
  6. mysql 事务 for update_mysql事务,select for update,及数据的一致性处理
  7. 使用gulp-connect实现web服务器
  8. java 结构体数组初始化_C数组结构体联合体快速初始化
  9. 多任务实现-协程(python 版)
  10. springboot redis token_Spring Boot+Redis 扛住,瞬间千次重复提交(实例)
  11. html跨年表白代码
  12. linux make指定目标平台,CMake on Linux:目标平台不支持动态链接
  13. bzoj 4624 农场种植 fft
  14. IDEA快捷键大全(超详细!)
  15. 备战数学建模2——MATLAB导入数据,处理缺失值
  16. 阿里开放平台接入——开放平台注册与API调用
  17. spring中c3p0配置 ---这是一位仁兄的经历
  18. 注册表功能大全(转)
  19. 电脑出现错误信息的故障排除
  20. arcgis api for javascript4.18加载天地图服务,并且加载自己的发布的动态地图服务

热门文章

  1. 京东价格监控软件开发技术探讨八:如何获取京东商品分类数据
  2. 离线地图下载及地图瓦片制作
  3. 博弈论概述 (转自百度百科)
  4. Xcode9 Could not receive a message from the device
  5. 如何在 macOS 上安装Axure RP
  6. 腾讯推出微信公众平台企业服务平台风铃
  7. Qt5配置opencv4.5.4
  8. Unity官网中文API地址
  9. 如何修复uefi引导?这种方法才是最有效的解决方法
  10. 黑马程序员Python教程的代码--植物大战僵尸游戏代码