Google App Engine中的过滤器类似于Like

时间:2014-05-30 12:05:54

标签: java google-app-engine cursor

我有一个请求Google App Engine Java服务器的应用程序 每次通话获取15条记录。我有一个很大的数据库,所以我正在使用 光标技术一次只能从数据库中获取15条记录。

问题是我在数据存储区上有一个“详细信息”列,该列已打开 每条记录平均1000个字符。我的应用程序的客户端 发送关键字,例如软件,到服务器端和服务器端必须 检查该“关键字”列中是否存在该关键字,如果存在 返回包含此关键字的15条记录。如何添加此过滤器 在我的代码中?

int pageSize = 15;
        FetchOptions fetchOptions = FetchOptions.Builder.withLimit(pageSize);
        String startCursor = req.getParameter("cursor");

        // If this servlet is passed a cursor parameter, let's use it
        if (startCursor != null) {
          fetchOptions.startCursor(Cursor.fromWebSafeString(startCursor));
        }

        Query q = new Query("Table").addSort("dateAdded", SortDirection.DESCENDING);
        PreparedQuery pq = datastore.prepare(q);

        QueryResultList<Entity> results = pq.asQueryResultList(fetchOptions);
        for (Entity entity : results) {
          entity.getProperty("dateAdded");
        }

1 个答案:

答案 0 :(得分:0)

您必须使用搜索API来索引“详细信息”属性。