我是个新手,刚开始和lucene在一起。我有个小问题。我需要知道如何重写lucene查询。我在(SO)中阅读了一篇文章,其中建议使用Query.rewrite (查询重写器将更高级别的查询子句转换为性能更好的低级子句。)。但是,对于这一点,它需要一个类型为的对象,我不想使用它。
任何其他实施方法的建议。
提前谢谢
问候
发布于 2013-12-10 16:29:42
它需要一个IndexReader,是的。如果没有IndexReader,就不能将任意查询重写为基本查询,因为重写的表单取决于索引中的术语。例如,PrefixQuery将被重写为一组TermQueries,基于该索引中的术语与给定的前缀匹配。需要IndexReader来阅读这些术语。如果不能读取索引的当前状态,MultiTermQueries一般就无法重写。
https://stackoverflow.com/questions/20492237
复制相似问题