`

Lucene Filter CachingWrapperFilter

 
阅读更多

IndexSearcher is = new IndexSearcher(Index_Store_Path);			
TermQuery tq = new TermQuery(new Term("bk", "bc"));			
QueryFilter qf = new QueryFilter(tq);
QueryParser qp = new QueryParser("bk", new StandardAnalyzer());
Query q = qp.parse("gh hi");
Hits hits = is.search(q, qf, s);


TermQuery tq = new TermQuery(new Term("bk", "bc"));
QueryFilter qf = new QueryFilter(tq);
			
//此时只对Index 进行了一次访问 , 因为CachingWrapperFilter 能够缓存上一个Filter的结果 从而直接在结果中查找 而普通的则需要访问两次Index
CachingWrapperFilter cwf = new CachingWrapperFilter(qf);			
QueryParser qp = new QueryParser("bk", new StandardAnalyzer());
Query q = qp.parse("gh hi");
Hits hits = is.search(q, cwf);

CachingWrapperFilter 使用WeakHashMap作为Cache,其中key:IndexReader value:BitSet

CachingWrapperFilter的bits方法被调用的时候,会首先检查Cache中是否已经存在上一个Filter的结果,若存在,直接取出后返回,否则执行传入的Filter
 
分享到:
评论

相关推荐

    lucene实例lucene实例

    lucene实例lucene实例lucene实例lucene实例lucene实例lucene实例lucene实例lucene实例lucene实例

    lucene,lucene教程,lucene讲解

    lucene,lucene教程,lucene讲解。 为了对文档进行索引,Lucene 提供了五个基础的类 public class IndexWriter org.apache.lucene.index.IndexWriter public abstract class Directory org.apache.lucene.store....

    lucene3.0 lucene3.0

    lucene3.0 lucene3.0 lucene3.0 lucene3.0 lucene3.0

    lucene学习lucene学习

    lucene学习lucene学习lucene学习lucene学习lucene学习lucene学习lucene学习lucene学习lucene学习lucene学习lucene学习lucene学习lucene学习lucene学习lucene学习lucene学习lucene学习lucene学习lucene学习lucene学习...

    Lucene的使用与优化

    3.1 analyzer Analyzer是分析器,它的作用是把一个字符串按某种规则划分成一个个词语,并去除其中的无效词语,这里说的无效词语是指英文中的“of”、“the”,中文中的“的”、“地”等词语,这些词语在文章中大量...

    lucene-queries-2.9.0.jar 内含有org.apache.lucene.search.DuplicateFilter

    lucene-queries-2.9.0.jar 内含有org.apache.lucene.search.DuplicateFilter

    Lucene3.0特性,Lucene3.0特性

    Lucene3.0特性Lucene3.0特性

    lucene-analyzers-common-5.1.0.jar

    * Class SnowballProgram is made abstract and contains new abstract method stem() to avoid reflection in Lucene filter class SnowballFilter. * All use of StringBuffers has been refactored to ...

    lucene-core-7.7.0-API文档-中文版.zip

    赠送jar包:lucene-core-7.7.0.jar; 赠送原API文档:lucene-core-7.7.0-javadoc.jar; 赠送源代码:lucene-core-7.7.0-sources.jar; 赠送Maven依赖信息文件:lucene-core-7.7.0.pom; 包含翻译后的API文档:lucene...

    lucene讲义 叫你用lucene算法

    lucene学习教程lucene讲义 叫你用lucene算法

    lucene.NET 中文分词

    lucene.NET 中文分词 高亮 lucene.NET 中文分词 高亮 lucene.NET 中文分词 高亮 lucene.NET 中文分词 高亮

    lucene3源码分析

    lucene3源码分析

    lucene-core-7.2.1-API文档-中文版.zip

    赠送jar包:lucene-core-7.2.1.jar; 赠送原API文档:lucene-core-7.2.1-javadoc.jar; 赠送源代码:lucene-core-7.2.1-sources.jar; 赠送Maven依赖信息文件:lucene-core-7.2.1.pom; 包含翻译后的API文档:lucene...

    Lucene4.X第九讲-Lucene搜索深入实战

    本课程由浅入深的介绍了Lucene4的发展历史,开发环境搭建,分析lucene4的中文分词原理,深入讲了lucenne4的系统架构,分析lucene4索引实现原理及性能优化,了解关于lucene4的搜索算法优化及利用java结合lucene4实现...

    lucene4.2 jar包

    lucene-analyzers-common-4.2.0.jar; lucene-analyzers-kuromoji-4.2.0.jar; lucene-analyzers-phonetic-4.2.0.jar; lucene-codecs-4.2.0.jar; lucene-core-4.2.0.jar; lucene-grouping-4.2.0.jar; lucene-...

    Annotated Lucene 中文版 Lucene源码剖析

    Annotated Lucene 中文版 Lucene源码剖析

    Lucene实战

    《Lucene实战(第2版)》基于Apache的Lucene 3.0,从Lucene核心、Lucene应用、案例分析3个方面详细系统地介绍了Lucene,包括认识Lucene、建立索引、为应用程序添加搜索功能、高级搜索技术、扩展搜索、使用Tika提取文本...

    lucene例子(一个完整的,lucene例子)(lucenetest.rar,lucene,全文检索,lucene例子)

    lucenetest.rar,lucene,全文检索,lucene例子 lucenetest.rar,lucene,全文检索,lucene例子lucenetest.rar,lucene,全文检索,lucene例子

    Lucene时间区间搜索

    c#下实现Lucene时间区间查询匹配。主要还是对Lucene查循对像Query的实现

    Lucene3.5源码jar包

    Lucene3.5全部源码,打包jar文件,可以直接打开查看源码,Lucene开发必备

Global site tag (gtag.js) - Google Analytics