AWSのS3からJAVAでフォルダごと取得する方法
2017年06月05日 20時32分11秒
AWS SDK for Javaを使ってS3からフォルダごと一括で取得し、ローカルに保存する必要があったので調査。
ネットで調べると、AWS CLIを使った方法だったり、Javaでフォルダ配下のファイルを一覧でパスを取得する方法は沢山出てくるが、全ファイルを取得する方法がなかなか見つからない。
日本語で見つからないなら英語でってことで検索してみると簡単に発見。
https://stackoverflow.com/questions/35865045/how-to-download-entire-folder-located-on-s3-bucket/35865581
上記サイトにも載ってるがパラメータが何なのか日本語で分かるようにメモ。
TransferManager transferManager = new TransferManager(new
DefaultAWSCredentialsProviderChain());
MultipleFileDownload download = transferManager.downloadDirectory("バケ
ット名", "ダウンロードS3したいS3上のパス(先頭に/はNG)", new File("ロー
カルの保存先パス"));
try {
download.waitForCompletion();
} catch (AmazonClientException | InterruptedException e) {
e.printStackTrace();
}
ネットで調べると、AWS CLIを使った方法だったり、Javaでフォルダ配下のファイルを一覧でパスを取得する方法は沢山出てくるが、全ファイルを取得する方法がなかなか見つからない。
日本語で見つからないなら英語でってことで検索してみると簡単に発見。
https://stackoverflow.com/questions/35865045/how-to-download-entire-folder-located-on-s3-bucket/35865581
上記サイトにも載ってるがパラメータが何なのか日本語で分かるようにメモ。
TransferManager transferManager = new TransferManager(new
DefaultAWSCredentialsProviderChain());
MultipleFileDownload download = transferManager.downloadDirectory("バケ
ット名", "ダウンロードS3したいS3上のパス(先頭に/はNG)", new File("ロー
カルの保存先パス"));
try {
download.waitForCompletion();
} catch (AmazonClientException | InterruptedException e) {
e.printStackTrace();
}
PR
Comment