我使用Lucene实现分面搜索。我有一份文件索引和一份分类索引。然后我收集给定级别的分类法的方面。
我的问题是:如何获取在分类标准的特定类别中编入索引的文档数量?
我认为我的问题非常简单但我在Lucene的API中找不到任何方法,也没有在Google中搜索。我只找到了如何使用numDocs()
类的IndexReader
方法获取整个索引中的文档数。
答案 0 :(得分:1)
如果索引中的每个类别都有一个术语,也许您可以使用TermEnum.docFreq()之类的内容?您可以从IndexReader.terms(Term)获取TermEnum对象。
答案 1 :(得分:0)
我对您的索引结构不太了解,无法为您建议正确的查询,但如果您执行查询以搜索您的类别中的所有文档,那么返回的结果集通常会计算查询的总命中数。
例如,如果使用以下任一方式进行查询:
search(Query query, int n)
search(Query query, Filter filter, int n)
然后您将获得一个TopDocs对象,您可以从中获取总点击次数:TopDocs.totalHits。