查找lucene索引中的文档数

时间:2009-01-14 10:00:05

标签: java lucene

使用Java如何找出lucene索引中的文档数量?

4 个答案:

答案 0 :(得分:15)

答案 1 :(得分:3)

答案 2 :(得分:3)

使用java你可以找到这样的文档数量:

IndexReader reader = IndexReader.open(FSDirectory.open(indexDirectory));
System.out.println(reader.maxDoc()); //this will give ya what you need.

答案 3 :(得分:0)

使用Hibernate Search时,可以通过Hibernate Search API获取Lucene IndexReader实例,然后使用前面提到的答案中提到的reader.numDocs()

FullTextEntityManager fullTextEntityManager = org.hibernate.search.jpa.Search.getFullTextEntityManager(get‌​EntityManager());
IndexReader reader = fullTextEntityManager.getSearchFactory().getIndexReaderAcces‌​sor().open(MyEntity1‌​.class, MyEntity2.class ...);
int numDocs = reader.numDocs();