GAE数据存储获取查询不返回任何内容

时间:2016-05-01 09:42:59

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

我使用Android Studio后端在GAE数据存储区中保存了一些数据,我可以在数据存储控制台中看到它。但是,当我尝试使用查询从我的应用程序中的同一后端检索数据时,它根本不返回任何内容。它也不会抛出任何错误。以下是应该检索实体类型的代码片段"匹配":

        Date date=new Date();
        Filter filter=new FilterPredicate("matchTime", FilterOperator.GREATER_THAN,date);
        Query qry=new Query("Match").setFilter(filter);
        PreparedQuery pq=datastoreService.prepare(qry);
        List<Entity> entities=pq.asList(FetchOptions.Builder.withLimit(5));

这是我已经尝试过的:

  • 删除过滤器并使用:查询qry = new查询(&#34;匹配&#34;)
  • 使用父键尝试查询,即使我理解这应该是没有父键的查询的子集。

在所有情况下,我只得到一个空列表而没有任何错误。请在这里建议我做错了什么。我在不同时间执行的put操作工作得很好,所以必须使用查询。

1 个答案:

答案 0 :(得分:0)

您的代码没有任何问题。

检查您是否使用了正确的实体类型(代码中的“匹配”)。我为种类和属性名称使用静态常量。许多开发人员使用类名称。在这两种情况下,想法是在向查询提供类型或属性名称时防止打字错误。