我在基于Web的应用程序中使用Lucene搜索API。 建议使用Lucene的IndexSearcher类的哪种方法?任何方法都比其他方法快吗?
1.IndexSearcher(目录目录) 2.IndexSearcher(IndexReader r) 3.IndexSearcher(字符串路径)
感谢阅读。
答案 0 :(得分:3)
在内部接受Directory和path的路径的构造函数使用接受IndexReader的构造函数。因此,没有其他人的性能优势。请记住,如果使用IndexReader创建搜索器,则必须在关闭搜索器后明确关闭阅读器。
答案 1 :(得分:0)
一切都是为了方便。
如果您只想创建IndexSearcher
,请使用接受路径的那个。
如果您已有Directory
个对象,请使用接受Directory
的对象。
如果你有一个IndexReader
......你明白了。请记住,如果您提供了IndexReader
,那么您应该在关闭IndexSearcher
后自行关闭它。
我强烈建议您抓一份Lucene source code。它非常易读,可以回答很多这些问题。