我无法从数据存储中检索实体。
以下:Google Code Lab我做了这个功能:
@SuppressWarnings("deprecation")
public static Iterable<Entity> listEntities(String kind, String searchBy,String searchFor) {
com.google.appengine.api.datastore.DatastoreService ds = DatastoreServiceFactory.getDatastoreService();
Query q = new Query(kind);
if (searchFor != null && !"".equals(searchFor))
{
q.addFilter(searchBy, FilterOperator.EQUAL, searchFor);
}
PreparedQuery pq = ds.prepare(q);
return pq.asIterable();
}
然后调用它来获取值:
for(Entity u:listEntities("Upload","UID","ratan"))
{
String uid = (String) u.getProperty("url");
System.out.println("#1##"+uid);
}
但它没有打印出任何价值! 哪里出错了。
这是我的“上传”实体的数据存储实例
即使这不起作用:
for(Entity u:listEntities("Upload",null,null))
{
String uid = (String) u.getProperty("url");
System.out.println("#1##"+uid);
}
答案 0 :(得分:0)
您必须为此实体定义索引。如何在app引擎中定义索引请看这个链接:
https://developers.google.com/appengine/docs/java/config/indexconfig