Lucene之执行搜索

执行搜索篇:

     索引建好后就可以执行搜索了,执行搜索的过程就是:将用户输入的光剑子进行处理,从而得到搜索结果。使用Lucene执行搜索,首先建立IndexSearcher对象,然后通过Term和Query对象来封装用户输入的搜索天阿健,最后激昂结果封装在Hits对象中,返回给用户。

 

     创建搜索器对象IndexSearcher:IndexSearchersearcher=new IndexSearcher(索引存放路径);创建完之后就能进行搜索,常用方法是search(),使用search方法返回一个结果集对象,如Hits,Hits h=searcher.search();

     执行搜索完毕之后,应该使用close()方法关闭IndexSearcher对象,如:searcher.close();

 

封装搜索条件:使用Term和Query对象。

     创建Term对象来封装这个搜索条件,可用:Term t=newTerm(“字段名称”,”关键词”);如:Term t=new Term(“title”,”中国”);

     然后创建一个Query对象,从而把Term对象转化成可执行的查询条件,Query对象有很多种,Query q=new TermQuery(t);

     至此,用户的搜索请求就被封装好了,封装在Query对象中。

 

执行搜索:

    用户的搜索请求被封装好了之后,就该把请求床底给IndexWSearcher对象,使其执行搜索,IndexSearcher对象调用Search方法,以Query对象为参数,返回搜索结果,封装在Hits对象中,如:Hits hs=searcher.search(q);

你可能感兴趣的:(Lucene之执行搜索)