0

嗨云计算极客,有没有任何方法可以使用 JAVA AWS 开发工具包(而不是使用 CLI 命令/ec2-api-tools)安装/连接 S3 存储桶和 EC2 实例。我确实拥有所需的所有 JAVA sdk。我使用 Java AWS SDK 成功创建了一个存储桶,现在进一步想将它与我位于北弗吉尼亚地区的 EC2 实例连接起来。我没有找到任何方法来做到这一点,但我希望必须有某种方法。

干杯,哈米

4

1 回答 1

2

您不会“挂载 S3 存储桶”,它们不会以这种方式工作,因为它们不是文件系统。Amazon S3是一种基于密钥的存储服务。您使用密钥放置对象(文件)并使用相同的密钥检索它们。键只是您任意分配的名称,您可以在名称中包含“/”标记以模拟文件的层次结构。例如,一个键可以是folder1/subfolder/file1.txt. 为了说明,我展示了 java sdk 的基本操作。

首先,您必须设置您的亚马逊凭证并获取 S3 客户端:

AWSCredentials credentials = new BasicAWSCredentials("your_accessKey", your_secretKey");
AmazonS3Client s3client = new AmazonS3Client(credentials);

存储一个文件:

File file = new File("some_local_path/file1.txt");
String fileKey = "folder1/subfolder/file1.txt";
s3client.putObject("bucket_name", fileKey, file);

取回文件:

 S3ObjectInputStream objectInputStream = s3client.getObject("bucket_name", fileKey).getObjectContent();

您可以读取 InputStream 也可以将其保存为 file

列出(模拟)文件夹的对象:请参阅我在另一个问题中的回答

于 2013-04-14T08:07:58.487 回答