我在Lucene中有这样的代码。有人可以提供有关如何使用Lucene进行分页的示例或提示吗?

    Query q = queryParser.parse(useQuery);
TopScoreDocCollector collector = TopScoreDocCollector.create(maxReturn, true);
searcher.search(q, collector);


谢谢。

最佳答案

您可以使用TopDocsCollector.topDocs(int)获得代表特定结果页面的TopDocs。请记住,start参数代表其中应开始的文档数量,而不是“页面”的数量,因此类似:

TopDocs hits = collector.topDocs(maxReturn*page);


通常是适当的(page从0开始编号)

08-19 22:57