由于我的应用程序的性质,我需要为数据存储区“命名空间”。
这是我在文档中看到的代码:
// Set the namepace temporarily to "abc"
String oldNamespace = NamespaceManager.get();
NamespaceManager.set("abc");
try {
... perform operation using current namespace ...
} finally {
NamespaceManager.set(oldNamespace);
}
但是,我不确定必须先将命名空间设置为 XML 的位置,然后才能使用它,或者可以在代码中动态创建命名空间?
我还看到 MemcacheService
有一个setNamespace
方法(尽管已弃用); DatastoreService
怎么样?有没有办法为我们从 DatastoreServiceFactory
获得的给定服务实例命名空间?工厂,所以我们不必用我们的代码来回设置 namespace ?
最佳答案
您不必声明命名空间即可使用它们。如果您想创建 Multi-Tenancy 应用程序,那么命名空间是完美的选择。基本上,您只需在请求开始时一次设置命名空间即可。该命名空间设置会自动应用于该请求期间的所有 API 调用。仅当访问所有租户共享的数据时才需要按照文档中所示的方式来回切换。
关于java - Google App Engine 数据存储区中的命名空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16166969/