当我在 Lucene () 中执行查询时,topDocs = searcher.search(booleanQuery, 220000);我得到了 170 个检索文档。这是正确的,但我希望在结果中包含完整的文档列表,即使分数非常低。
有没有办法强制 lucene 获取我所有收藏的文档的完整列表,而不仅仅是相关的文档?
或者也许这意味着所有其他文档得分都是 0 ?
谢谢
小智 5
从 Lucene 3.x 开始,您可以使用它TotalHitCountCollector来检索查询的总命中数。然后,您可以检索查询的所有文档以及总命中数。小心处理箱子,不要受到任何撞击。
TotalHitCountCollector collector = new TotalHitCountCollector();
searcher.search(booleanQuery, collector);
topDocs = searcher.search(booleanQuery, Math.max(1, collector.getTotalHits()));
Run Code Online (Sandbox Code Playgroud)