首頁 > Java > java教程 > 如何使用 Java 和 JSch 從 SFTP 伺服器檢索檔案?

如何使用 Java 和 JSch 從 SFTP 伺服器檢索檔案?

Susan Sarandon
發布: 2024-12-03 18:44:12
原創
565 人瀏覽過

How Can I Retrieve a File from an SFTP Server Using Java and JSch?

在 Java 中透過 SFTP 從伺服器擷取檔案

要使用 SFTP 從遠端伺服器擷取文件,Java 程式設計師有多種選擇。一個流行的選擇是 JSch 庫。

使用 JSch 進行 SFTP 檔案檢索

JSch 是一個廣泛使用的 Java 中的 SSH 和 SFTP 操作庫。它為基於密碼和基於憑證的身份驗證以及一系列其他 SSH2 功能提供全面支援。

要使用 JSch 進行簡單的 SFTP 檔案檢索,您可以按照以下步驟操作:

  1. 建立一個新的 JSch 實例。
  2. 使用設定已知的主機金鑰setKnownHosts。
  3. 透過使用 getSession 建立 Session 物件來建立 SSH 會話。
  4. 透過 setUserInfo 或 setPassword 設定使用者驗證資訊。
  5. 使用 connect 連線會話。
  6. 使用 openChannel 開啟 SFTP 頻道並使用連線。
  7. 使用 ChannelSftp 物件的 get 方法檢索遠端檔案並將其保存在本機。

以下是使用JSch 檢索SFTP 檔案的範例程式碼片段:

JSch jsch = new JSch();
jsch.setKnownHosts("/home/username/.ssh/known_hosts");

Session session = jsch.getSession("remote-username", "remote-host");
session.setPassword("remote-password");
session.connect();

Channel channel = session.openChannel("sftp");
channel.connect();

ChannelSftp sftpChannel = (ChannelSftp) channel;
sftpChannel.get("remote-file", "local-file");

sftpChannel.exit();
session.disconnect();
登入後複製

此程式碼建立SSH 會話、使用密碼進行驗證、開啟SFTP 通道並擷取遠端檔案「 remote-file」到本機檔案「local-file」。

以上是如何使用 Java 和 JSch 從 SFTP 伺服器檢索檔案?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板