AWS SDK for Java 2.0 使用的基礎入門

背景

AWS SDK for Java提供適用於 Amazon Web Services 的 Java API。利用此開發工具包,開發者可以輕鬆構建使用 Amazon S3、Amazon EC2、DynamoDB 等。

使用AWS SDK 需要一些基礎的配置。

第一步

(1)需要有一個AWS 賬號。

(2)需要在AWS中創建一個IAM用戶,得到一個密鑰。

具體的可以參見IAM的說明

 創建的時候有一個文件,需要保存好。編碼的時候用的到。

 第二步 創建Maven工程

(有的人習慣於創建gradle,也是一樣的,本文就以maven爲例)

至於配置JDK的和maven環境以及intellij IDEA的事情就不敘述了。

 第三步 配置maven

 <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                </configuration>
            </plugin>
        </plugins>
    </build>

    <dependencies>

        <dependency>
            <groupId>software.amazon.awssdk</groupId>
            <artifactId>s3</artifactId>
            <version>2.7.11</version>
        </dependency>
        <dependency>
            <groupId>com.amazonaws</groupId>
            <artifactId>aws-java-sdk-core</artifactId>
            <version>1.11.327</version>
        </dependency>
    </dependencies>

第四步 編碼與測試

首先在S3中創建文件夾

然後編碼:


import software.amazon.awssdk.auth.credentials.AwsBasicCredentials;
import software.amazon.awssdk.auth.credentials.AwsCredentials;
import software.amazon.awssdk.services.s3.S3Client;
import software.amazon.awssdk.services.s3.model.ListBucketsResponse;

import software.amazon.awssdk.auth.credentials.AwsCredentialsProvider;

public class TestS3 {

    private static String AWS_ACCESS_KEY_ID = "XXXX";//替換成自己的
    private static String AWS_SECRET_ACCESS_KEY = "XXX";//替換成自己的


    public static void main(String[] args) {
        AwsCredentialsProvider credentialsProvider = getCredentials();
        S3Client s3 = S3Client.builder().credentialsProvider(credentialsProvider).build();
        ListBucketsResponse listBucketsResponse = s3.listBuckets();
        listBucketsResponse.buckets().stream().forEach(x -> System.out.println(x.name()));
    }


    public static AwsCredentialsProvider getCredentials() {

        return new AwsCredentialsProvider() {
            @Override
            public AwsCredentials resolveCredentials() {
                return AwsBasicCredentials.create(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY);
            }
        };

    }
}

 

結果

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章