ホームページ > Java > &#&チュートリアル > Java と JSch を使用して SFTP サーバーからファイルを取得するにはどうすればよいですか?

Java と JSch を使用して SFTP サーバーからファイルを取得するにはどうすればよいですか?

Susan Sarandon
リリース: 2024-12-03 18:44:12
オリジナル
507 人が閲覧しました

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

Java で SFTP 経由でサーバーからファイルを取得する

SFTP を使用してリモート サーバーからファイルを取得するには、Java プログラマが自由に使用できるオプションがいくつかあります。一般的な選択肢の 1 つは、JSch ライブラリです。

SFTP ファイルの取得に JSch を使用する

JSch は、Java での SSH および SFTP 操作に広く使用されているライブラリです。これは、他のさまざまな SSH2 機能とともに、パスワードベースと証明書ベースの認証の両方に対する包括的なサポートを提供します。

JSch を使用して簡単な SFTP ファイルを取得するには、次の手順に従います。

  1. 新しい JSch インスタンスを作成します。
  2. 次を使用して既知のホスト キーを設定します。 setKnownHosts.
  3. getSession を使用して Session オブジェクトを作成し、SSH セッションを確立します。
  4. setUserInfo または setPassword を使用してユーザー認証情報を設定します。
  5. connect を使用してセッションを接続します。
  6. openChannel を使用して SFTP チャネルを開き、次を使用して接続します。 connect.
  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 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート