@thorikiriのてょりっき

@thorikiriがWebとかAndroidとかの技術ネタや本を読んだブログです

JavaでAmazon S3にファイルをアップロードする

基本的には、SDKに含まれているサンプルを見れば何をするのかわかるんですが、やってみたこととしてメモしておきます。
すでにバケットが用意されていると言う前提です。
今回はCredentialsをBasicAWSCredentialsにて作成しましたが、公式のサンプルではPropertiesCredentialsを使ってプロパティファイルを用いるようになっていました。
AmazonS3Clientのインスタンスを作って、putObjectをするだけだなんて素敵過ぎますね。

public class A3Service {
    // getter setter略
    private String accessKey;
    private String secretKey;
    private String bucketName;

    public void upload(File file) {
        try {
            AWSCredentials credentials = new BasicAWSCredentials(accessKey, secretKey);
            AmazonS3 s3 = new AmazonS3Client(credentials);
            s3.putObject(bucketName, file.getName(), file);
        } catch (IOException e) {
            throw new RuntimeException(e);
        }
    }
}

Amazon Web Services ガイドブック クラウドでWebサービスを作ろう!

Amazon Web Services ガイドブック クラウドでWebサービスを作ろう!