本地文件转存到对象存储是一种将本地文件存储到云端的方法,目的是为了实现数据的持久化和备份,同时也方便了文件的分享和管理。本文将介绍如何使用AWS S3 Bucket实现本地文件转存到对象存储的方法。
AWS S3 Bucket是一种高可靠性、可扩展的对象存储服务,旨在存储和检索大量数据。它可以轻松存储和检索任意数量的数据,从几个千字节到每个对象的最大4TB。S3还提供了高度安全、可靠和低延迟的数据访问能力,可以满足各种使用场景的需求。
下面是使用AWS SDK for Java将本地文件转存到S3 Bucket示例的代码:
import java.io.File;
import java.io.IOException;
import com.amazonaws.AmazonServiceException;
import com.amazonaws.SdkClientException;
import com.amazonaws.auth.AWSStaticCredentialsProvider;
import com.amazonaws.auth.BasicAWSCredentials;
import com.amazonaws.services.s3.AmazonS3;
import com.amazonaws.services.s3.AmazonS3ClientBuilder;
import com.amazonaws.services.s3.model.PutObjectRequest;
public class UploadObject {
public static void main(String[] args) throws IOException {
String bucketName = "my-test-bucket"; // S3 Bucket name
String keyName = "my-folder/my-file.txt"; // S3 Bucket object key
String filePath = "C:\\Files\\my-file.txt"; // Local file path
// AWS credentials
String accessKey = "MY_ACCESS_KEY";
String secretKey = "MY_SECRET_KEY";
try {
BasicAWSCredentials awsCreds = new BasicAWSCredentials(accessKey, secretKey);
// Create AmazonS3 client
String region = "us-east-2";
AmazonS3 s3Client = AmazonS3ClientBuilder.standard()
.withCredentials(new AWSStaticCredentialsProvider(awsCreds))
.withRegion(region)
.build();
// Upload file to S3 Bucket
PutObjectRequest request = new PutObjectRequest(bucketName, keyName, new File(filePath));
s3Client.putObject(request);
System.out.println("File uploaded successfully to S3 Bucket!");
} catch (AmazonServiceException e) {
// Error occurred during Amazon S3 service call
e.printStackTrace();
} catch (SdkClientException e) {
// Error occurred in the AWS SDK for Java
e.printStackTrace();
}
}
}
在