我的索引中有非常多的文档,我需要编写一个返回lucence索引中文档总数的方法。目前我使用*通配符来获取所有记录并返回totalHits的值。
问题是,当查询加载所有对象时,它需要花费大量时间,虽然我不需要加载对象,但我的要求是获取记录总数而不加载文档。
答案 0 :(得分:8)
您可以使用索引阅读器:
IndexReader reader = IndexReader.open(FSDirectory.open(indexDirectory));
int num = reader.numDocs();
欧米