背景
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);
}
};
}
}