createS3Link
創(chuàng)建 Amazon S3 中對(duì)象的鏈接。必須指定存儲(chǔ)桶名稱和用于唯一標(biāo)識(shí)存儲(chǔ)桶中的對(duì)象的鍵名稱。
要使用?createS3Link,您的映射器類必須定義 getter 和 setter 方法。以下代碼段通過(guò)將新屬性和 getter/setter 方法添加到 CatalogItem 類對(duì)此加以說(shuō)明:
@DynamoDBTable(tableName="ProductCatalog")
public class CatalogItem {
? ? ...
? ? public S3Link productImage;
? ? ....
? ? @DynamoDBAttribute(attributeName = "ProductImage")
? ? public S3Link getProductImage() {
? ? ? ? ? ? return productImage;
? ? }
? ? public void setProductImage(S3Link productImage) {
? ? ? ? this.productImage = productImage;
? ? }
...
}
以下 Java 代碼定義了一個(gè)要寫(xiě)入 Product 表的新項(xiàng)目。該項(xiàng)目包含某個(gè)產(chǎn)品圖像的鏈接;圖像數(shù)據(jù)會(huì)上傳至 Amazon S3。
CatalogItem item = new CatalogItem();
item.id = 150;
item.title = "Book 150 Title";
String myS3Bucket = "myS3bucket";
String myS3Key = "productImages/book_150_cover.jpg";
item.setProductImage(mapper.createS3Link(myS3Bucket, myS3Key));
item.getProductImage().uploadFrom(new File("/file/path/book_150_cover.jpg"));
mapper.save(item);
S3Link?類提供了許多用于操作 Amazon S3 中的對(duì)象的其他方法。有關(guān)更多信息,請(qǐng)參閱適用于?S3Link?的 Javadocs。
getS3ClientCache
返回用于訪問(wèn) Amazon S3 的基礎(chǔ)?S3ClientCache。一個(gè)?S3ClientCache?就是一個(gè)用于?AmazonS3Client?對(duì)象的智能映射。如果您有多個(gè)客戶端,則 S3ClientCache 可幫助您按區(qū)域來(lái)組織客戶端,并可以按需創(chuàng)建新的 Amazon S3 客戶端。