方法
1.引入依赖
<!-- AWS S3 -->
<dependency>
<groupId>software.amazon.awssdk</groupId>
<artifactId>s3</artifactId>
<version>2.13.63</version>
</dependency>
2.配置S3参数
public class AwsConfig {
/**
* access_key_id 访问密钥ID
*/
public static final String ACCESS_KEY = "xxx";
/**
* secret_key 访问密钥
*/
public static final String SECRET_KEY = "xxx";
/**
* bucket_name 桶名
*/
public static final String BUCKET_NAME = "xxx";
}
3.文件上传和下载
public class UploadToS3Util {
// 创建s3对象
private static final S3Client s3Client = S3Client
.builder()
.region(Region.CN_NORTH_1) //桶所在的位置
.credentialsProvider(StaticCredentialsProvider.create(AwsSessionCredentials.create(AwsConfig.ACCESS_KEY, AwsConfig.SECRET_KEY,"")))
.build();
/**
* s3上传文件
* @param uploadKey bucket中的存储文件名
* @param file 待上传的文件流
*/
public static boolean uploadToS3(String uploadKey, byte[] file) {
try {
if (file == null) {
return false;
}
//添加文件夹dev(文件夹其实就是一个前缀)
String prefix = "dev/";
String folderKey = prefix.concat(uploadKey);
PutObjectRequest p