2012-07-28 84 views
2

嗨,
我使用GAE搜索API,它似乎是一個非常棒的功能,它增加了標準數據存儲查詢中缺乏的重要功能。
但是我遇到了實現標準分頁的問題,即獲得與查詢文檔匹配的總量。當然,我可以使用Cursor實現一個「顯示更多」按鈕的列表,但能夠獲得總量也是非常棒的。
關於如何做到這一點的任何想法?
非常感謝您提前!GAE搜索API。獲取匹配文件的總量

回答

0

第1步:

設置你的準確度

QueryOptions options = QueryOptions.newBuilder() 
     ...set other options 
     .setNumberFoundAccuracy(1000); 
     .build(); 

設置Results.getNumberFound精度要求()。如果設置, getNumberFound()將精確到至少該數字。例如,對於 示例,如果設置爲100,則任何getNumberFound()< = 100都是準確的。 此選項可能會增加相當的延遲/費用,特別是當 與setFieldsToReturn(String ...)一起使用時。

步驟2執行查詢

Query query = Query.newBuilder().setOptions(options).build(queryString); 
Results<ScoredDocument> results = getIndex().search(query); 

步驟3呼叫getNumberFound()

results.getNumberFound(); 

通過搜索找到的結果的數量。如果該值小於 或等於相應QueryOptions.getNumberFoundAccuracy(), 那麼它是正確的,否則它是一個近似值返回: 數量的結果發現

+0

非常感謝您!有用! (似乎我不專心地閱讀API javadoc,抱歉) – Peter 2012-07-29 08:08:41