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