我有一个请求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");
}
答案 0 :(得分:0)
您必须使用搜索API来索引“详细信息”属性。