Tom*_*Tom 2 java scala amazon-s3
我正在使用AmazonS3Client.java从我的应用程序上传文件到S3.我使用putObject方法上传文件
val putObjectRequest = new PutObjectRequest(bucketName, key, inputStream, metadata)
val acl = CannedAccessControlList.Private
putObjectRequest.setCannedAcl(acl)
s3.putObject(putObjectRequest)
Run Code Online (Sandbox Code Playgroud)
这适用于我的S3帐户中最顶层的存储桶.现在,假设我想将文件上传到子桶,例如bucketA中的bucketB.我该如何为bucketB指定存储桶名称?
谢谢
可以肯定的是,在S3中没有"子桶"这样的东西.所有水桶都是顶级的.您在S3管理控制台或其他UI中看到的存储桶内部结构称为"文件夹",但即使它们并不存在!例如,您无法直接创建或销毁文件夹,也无法在其上设置任何属性.文件夹纯粹是一种表示级别约定,用于查看存储桶中底层的平面对象集.也就是说,将对象拆分为(完全不存在的)文件夹非常容易.只需给它们层次结构的名称,每个级别用"/"分隔.
val putObjectRequest = new PutObjectRequest(bucketName, topFolderName +"/" + subFolderName+ "/" +key, inputStream, metadata)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2664 次 |
| 最近记录: |