Google数据存储区:检查是否存在任何类型的实体

时间:2013-12-24 09:44:01

标签: java google-app-engine google-cloud-datastore

我的方案如下: 我有一个MapReduce作业在Datastore中的新实体(=表)上运行(使用com.google.appengine.tools.mapreduce.inputs.DatastoreInput)。实体是在别处创建的......

所以在第一次运行时,可能没有这种实体,在这种情况下,我根本不想开始工作。因此,在没有任何密钥的情况下,我想检查对于给定种类,是否存在任何实体或没有。

在API中找不到任何内容......

1 个答案:

答案 0 :(得分:1)

好吧,我想通了,使用查询。 这是代码,万一它可以帮助某人...

public static boolean kindExists (String kind)
{
    Query q = new Query(kind).setKeysOnly();
    PreparedQuery pq = DatastoreServiceFactory.getDatastoreService().prepare(q);
    return (CollectionUtils.isNotEmpty(pq.asList(FetchOptions.Builder.withLimit(1))));
}