jClouds:只使用一个 BlobStore 是否安全
jClouds: Is it safe to use only one BlobStore
我是 jClouds 项目的新手。我正在创建一个库,它将访问多个云提供商和文件系统。我想知道,BlobStore 和 BlobStoreContext 有什么区别?考虑我有以下 dao:
@Inject
private BlobStoreContext blobStoreContext;
@Override
public String storeMedia(String customerId, byte[] media) {
BlobStore blobStore = blobStoreContext.getBlobStore();
String id = UUID.randomUUID().toString();
Blob blob = blobStore.blobBuilder(id)
.payload(media)
.contentLength(media.length)
.build();
blobStore.putBlob(customerId, blob);
return id;
}
DAO 是单例对象。我应该在每次调用时注入 BlobStoreContext 并获得一个新的 BlobStore,还是可以 @Inject BlobStore 并将其用作单例实例?
谢谢!
上下文配置与特定提供者的连接,因此如果您需要您的 DAO 能够为 N 个提供者保留数据,您需要以可以访问每个操作的正确上下文的方式配置它。如果您的 DAO 仅限于一个提供者,那么您可以直接注入上下文或 BlobStore。
您可以在此处阅读主要 jclouds 概念的快速介绍:
http://jclouds.apache.org/start/concepts/
我是 jClouds 项目的新手。我正在创建一个库,它将访问多个云提供商和文件系统。我想知道,BlobStore 和 BlobStoreContext 有什么区别?考虑我有以下 dao:
@Inject
private BlobStoreContext blobStoreContext;
@Override
public String storeMedia(String customerId, byte[] media) {
BlobStore blobStore = blobStoreContext.getBlobStore();
String id = UUID.randomUUID().toString();
Blob blob = blobStore.blobBuilder(id)
.payload(media)
.contentLength(media.length)
.build();
blobStore.putBlob(customerId, blob);
return id;
}
DAO 是单例对象。我应该在每次调用时注入 BlobStoreContext 并获得一个新的 BlobStore,还是可以 @Inject BlobStore 并将其用作单例实例?
谢谢!
上下文配置与特定提供者的连接,因此如果您需要您的 DAO 能够为 N 个提供者保留数据,您需要以可以访问每个操作的正确上下文的方式配置它。如果您的 DAO 仅限于一个提供者,那么您可以直接注入上下文或 BlobStore。
您可以在此处阅读主要 jclouds 概念的快速介绍: http://jclouds.apache.org/start/concepts/