java - Lucene:获取完整的集合文档作为结果

标签 java lucene

当我在 Lucene (topDocs = searcher.search(booleanQuery, 220000);) 中执行查询时,我得到 170 次检索作为检索文档。这是正确的,但即使分数很低,我也希望在结果中包含完整的文档列表。

有没有办法强制 lucene 获取我所有 Collection 的完整文档列表,而不仅仅是相关文档?

或者这可能意味着所有其他文档得分为 0?

谢谢

最佳答案

从 Lucene 3.x 开始,您可以使用 TotalHitCountCollector 检索查询的总命中数。然后,您可以使用总命中数检索查询的所有文档。在没有任何命中的情况下小心。

TotalHitCountCollector collector = new TotalHitCountCollector();
searcher.search(booleanQuery, collector);
topDocs = searcher.search(booleanQuery, Math.max(1, collector.getTotalHits()));

关于java - Lucene:获取完整的集合文档作为结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5154366/

相关文章:

c# - 索引频繁更新的FieldCache

java - 将多个 SOLR 字段合并为一个

database - 使用 Lucene 查询 RDBMS 数据库

java - 如何反复用纹理填充 libgdx 主体?

java - RecyclerView 将按钮插入不可见区域

java - Oracle Java - 如何锁定一行以使其他进程无法读取它?

java - 需要霍夫曼的帮助

包含函数的 java 枚举 - 使用 switch 或 seller 作为成员变量

java - solr 将复数翻译为单数,不希望它这样做

elasticsearch - Lucene和Elasticsearch超出了文档限制