Java中使用jcraft進行SFTP的上傳下載
如果大家熟悉Linux的話,一定對ssh,sftp,scp等命令非常熟悉。ssh是一個安全協議,用來在不同系統或者服務
器之間進行安全連線。ssh 在連線和傳送的過程中會加密所有的資料。具體的解釋,大家可以參考百度百科的文
檔。地址為:http://baike.baidu.com/view/16184.htm
但是SSH一般是基於客戶端的或者Linux命令列的。比如客戶端的工具:OpenSSH,putty,SSH
Tectia;在linux上大家可以通過ssh [email protected]連線到所要想連線的主機。但是如果在J2EE中,如何實
現SSH呢?進而可以實現SCP,SFTP的功能呢?下面介紹的JSCH就可以實現下邊的功能。
JSCH是一個純粹的用java實現SSH功能的java library. 官方地址為:
http://www.jcraft.com/jsch/
GitHub 地址為:https://github.com/vngx/vngx-jsch
maven配置如下:
1.
<!--
加入sftp依賴包 -->
2.
<dependency>
3.
<groupId>com.jcraft</groupId>
4.
<artifactId>jsch</artifactId>
5.
<version>
0.1
.
51
</version>
6.
</dependency>
下面簡單介紹下JSCH的特點:
1.基於DSA和RSA加密。
2.可以實現4中認證機制。分別是:
passwordpublickey(DSA,RSA)
keyboard-interactive
gss-api-with-mic
3.生成public/private key pair.
4.執行bash script 等指令碼
5.可以通過HTTP/SOCK5 proxy
6.支援常見SSH1協議和SSH2協議我們日常用到的JSCH主要是基於是密碼認證和private key 認證。
基於密碼認證的比較簡單。簡單程式碼如下:
001.
package
com.somnus.util.base;
002.
003.
import
java.io.ByteArrayInputStream;
004.
import
java.io.File;
005.
import
java.io.FileInputStream;
006.
import
java.io.FileOutputStream;
007.
import
java.io.IOException;
008.
import
java.io.InputStream;
009.
import
java.util.Properties;
010.
import
java.util.Vector;
011.
012.
import
org.slf4j.Logger;
013.
import
org.slf4j.LoggerFactory;
014.
015.
import
com.jcraft.jsch.Channel;
016.
import
com.jcraft.jsch.ChannelSftp;
017.
import
com.jcraft.jsch.JSch;
018.
import
com.jcraft.jsch.Session;
019.
import
com.jcraft.jsch.SftpException;
020.
021.
/**
022.
*
sftp工具。注意:構造方法有兩個:分別是基於密碼認證、基於祕鑰認證。
023.
*
025.
*
@author Somnus
026.
*/
027.
public
class
SFTPUtil
{
028.
private
static
final
Logger
LOG = LoggerFactory.getLogger(SFTPUtil.
class
);
029.
private
ChannelSftp
sftp;
030.
private
String
userName;
//
FTP 登入使用者名稱
031.
private
String
pass<a href=
target=
"_blank"
class
=
"keylink"
>word</a>;
// FTP 登入密碼
032.
private
String
keyFilePath;
//
私鑰檔案的路徑
033.
private
String
host;
相關推薦
Java中的文件上傳和下載
獲取 https res 文件內容 tty type() val name 表單 文件上傳原理:
早期的文件上傳機制:
在TCP/IP中。最早出現的文件上傳機制是FTP。他是將文件由客戶端發送到服務器的標準機制。
jsp中的文件上傳機制:
在jsp編
JAVA Sftp 上傳下載
str create works throw 所在 inf end sco deb
SftpUtils
package xxx;import com.jcraft.jsch.Channel;
import com.jcraft.jsch.ChannelSftp;
imp
java實現FTP上傳下載:FTPClient類進行FTP上傳下載大檔案(包含導致假死現象)
介紹:
FTPClient是一個強大的FTP上傳下載工具,可以實現各種方式的ftp檔案傳輸,可以支援上傳下載各種大檔案(已在實踐中使用),而且存在官網使使用者方便的使用這個工具等等。
1.首先,程式中設定ftp請求方式為被動模式,即程式去請求ftp伺服器,要求伺服器來
JAVA基礎篇—文件上傳下載
mime contain comm jsp style javax bstr trace ace /index.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
page
xshell 使用 sftp上傳下載檔案
linux安裝 lrzsz 可以用 sz 下載檔案 rz 上傳檔案
還可以用sftp現在上傳下載檔案 常用命令:
sftp:/www> help
bye finish your SFTP session
cd change your remote
java遠端操作ftp伺服器上傳下載
注意裡面的檔案編碼,連線過程編碼與伺服器編碼不一致的話會導致上傳中文亂碼情況。
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.Inpu
Python示例程式碼之sftp上傳下載檔案
sftp的上傳下載是最為常見的功能之一,實現也很簡單,網上資料很多,但為了Python知識點的完整性,還是再描述了一遍。
通常我們使用paramiko庫實現sft
JQueryAjax使用SpringMVC中MultipartFile進行檔案上傳的整合
對於一個帶有檔案上傳的表單,後臺使用springMVC封裝的MultipartFile file接收檔案,並且需要使用非同步提交,並返回相應的提示資訊
在這種情況下,我最開始使用了好幾種方法
第一種:普通的JQUERY的AJAX,但是後臺一旦使用MultipartFile
Xshell5下利用sftp上傳下載傳輸檔案
sftp是Secure File TransferProtocol的縮寫,安全。可以為傳輸檔案提供一種安全的加密方法。sftp與
ftp有著幾乎一樣的語法和功能。SFTP為 SSH的一部分,是一
XShell 4使用sftp上傳下載檔案命令[轉]
bye finish your SFTP session
cd change your remote working directory
clear clear screen
exit finish your SFTP session
explore explore your local
springmvc java物件轉json,上傳下載(未完)攔截器Interceptor以及原始碼解析(未完待續)
package com.atguigu.my.controller;
import java.util.Co
Java中使用jcraft進行SFTP的上傳下載
如果大家熟悉Linux的話,一定對ssh,sftp,scp等命令非常熟悉。ssh是一個安全協議,用來在不同系統或者服務
器之間進行安全連線。ssh 在連線和傳送的過程中會加密所有的資料。具體的解釋,大家可以參考百度百科的文
檔。地址為:http://baike.baidu.com/view
Java中實現檔案上傳下載的三種解決方案
第一點:Java程式碼實現檔案上傳
FormFile file=manform.getFile();
String newfileName = null;
String newpathname=null;
String fileAddre="/numU
java使用Jsch實現遠端操作linux伺服器進行檔案上傳、下載,刪除和顯示目錄資訊
1 package com.fline.aic.utils;
2
3 import java.io.BufferedReader;
4 import java.io.File;
5 import java.io.FileInputStream;
6 import jav
【JAVA-OSS】如何在spring-boot專案中使用oss上傳下載檔案
準備工作:
1.申請oss 你會得到 endpoint,accessKeyId,bucketName,accessKeySecret
2.引入oss maven dependency : com.aliyun.oss:aliyun-sdk-oss:jar:2.5.0
3.
Java專案中對MongoDB資料庫進行檔案上傳
import com.mongodb.MongoClient;
import com.mongodb.client.MongoDatabase;
import com.mongodb.client.gridfs.GridFSBucket;
import com.mongodb.client.gridfs.G
呼叫JAVA API對HDFS檔案進行檔案的讀寫、上傳下載、刪除等操作程式碼詳解
Hadoop檔案系統
基本的檔案系統命令操作, 通過hadoop fs -help可以獲取所有的命令的詳細幫助檔案。 Java抽象類org.apache.hadoop.fs.FileSystem定義了hadoop的一個檔案系統介面。該類是一個抽象類,通過以下兩種靜態工廠方
Java 使用 SFTP 實現檔案上傳下載(二)
package com.lijy.util;
import com.jcraft.jsch.Channel;
import com.jcraft.jsch.ChannelSftp;
import com.jcraft.jsch.JSch;
import com.jcraf
java利用jcraft實現和遠端伺服器互動,實現上傳下載檔案
git地址:https://github.com/fusugongzi/upLoadAndDownloadFile
第一步:引入maven支援,新增maven依賴
<!-- https://mvnrepository.com/artifact/com.jcraft
Mac如何使用SSH遠端連線linux及使用SCP、SFTP和Filezilla進行檔案上傳、下載
最近踏入了Mac的坑,各種不適應,linux伺服器上有個java web專案幾個class需要釋出,想找個類似windows下f-secure ssh套件,即可以進行命令操作,又可以進行檔案操作。很遺憾,沒找到合適的,哪位大俠有合適的求推薦。但是活得幹,程式要釋出呀,