java中sftp文件上传与下载

本文介绍了如何在Java中利用SFTP协议进行文件的上传和下载操作,适用于项目中需要与Linux服务器进行文件交互的场景。文章提到了项目依赖配置及LoggerUtil日志类的使用。
摘要由CSDN通过智能技术生成

Java中使用sftp进行文件上传与下载

最近项目中使用sftp进行文件上传与下载,特意写一篇文章用来作为例子参考:
注:项目的pom文件里面需要加上依赖包:

<dependency>
            <groupId>com.jcraft</groupId>
            <artifactId>jsch</artifactId>
            <version>0.1.51</version>
</dependency>
package com.leo.common.util;

import java.io.File;
import java.io.InputStream;
import java.util.Map;
import java.util.Properties;
import java.util.Vector;

import com.jcraft.jsch.Channel;
import com.jcraft.jsch.ChannelSftp;
import com.jcraft.jsch.ChannelSftp.LsEntry;
import com.jcraft.jsch.JSch;
import com.jcraft.jsch.Session;
import com.jcraft.jsch.SftpATTRS;
import com.jcraft.jsch.SftpException;
import com.leo.common.logger.LoggerUtil;
import com.leo.common.logger.LoggerUtil.Level;

public class SFtpApload {
   
    /**
    * url 服务器地址
    * port 端口号
    * username 服务器用户名
    * password 服务器密码
    * path 上传文件在服务器上的路径
    * filename 上传的文件名称
    * input 待上传内容的流
    */
    public static boolean uploadFile(String url, int port, String username,
            String password, String path, String filename, InputStream input) {
        try {
            ChannelSftp sftp = connect(url, port, username, password);
            upload(sftp, path, filename, input);
            disconnect(sftp);
        } catch (Exception e) {
            LoggerUtil.log(Level.ERROR, e, "upload file failed file={0}",
                    filename);
            return false;
        }
        LoggerUtil.log(Level.DEBUG, "upload file success file={0}", filename);
        return true;
    }


    public
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值