一个经典lucene入门模块及例子解析

一个经典lucene入门模块及例子解析

ID:8909441

大小:46.17 KB

页数:7页

时间:2018-04-11

一个经典lucene入门模块及例子解析_第1页
一个经典lucene入门模块及例子解析_第2页
一个经典lucene入门模块及例子解析_第3页
一个经典lucene入门模块及例子解析_第4页
一个经典lucene入门模块及例子解析_第5页
资源描述:

《一个经典lucene入门模块及例子解析》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、一个经典Lucene入门模块及例子解析Lucene是一个很强大的全文搜索工具,许多公司或软件实现都用到它,如一些公司用它来查子网信息,再如Eclipse等软件就是用它来实现索引的。这里给出Lucene的一个简单例子的代码来说明其大致使用流程模块,建立一个简单的Java搜索引擎。首先我们给出大概模块的代码,实际应用中会视情况而修改。Lucene实例代码:建立数据(data)的索引(Index)1.用IndexWriter建立一个Luceneindex2.创建一个LuceneDocument3.将Lucenedocument放进i

2、ndex中4.优化(optimize)和关闭(close)index用IndexWriter建立LuceneindexStringindexPath="/path/to/whereYou/wantThe/IndexStored";IndexWriterwriter=null;try{//MakealucenewriterandcreatenewLuceneindexwitharg3=truewriter=newIndexWriter(indexPath,newStandardAnalyzer(),true);}catch(IO

3、Exceptione){System.out.println("IOExceptionopeningLuceneIndexWriter:"+e.getMessage());}创建一个LucenedocumentStringcontent="ThisistheexampletextIwanttohaveLuceneindex";Documentdoc=newDocument();doc.add(Field.Text("content",content));将上述创建的document加进index中try{writer.addD

4、ocument(doc);}catch(IOExceptione){System.out.println("IOExceptionaddingLuceneDocument:"+e.getMessage());}优化(optimize)和关闭(close)IndexWritertry{writer.optimize();writer.close();}catch(IOExceptione){System.out.println("IOExceptionclosingLuceneIndexWriter:"+e.getMessage

5、());}Lucene实例代码:建立搜索(Search)步骤打开一个LuceneIndexSearcherIndexSearcherindexSearcher=newIndexSearcher(indexPath);假如你要将Lucene用到webpage上,最好是每次query都重用一下原来的。许多Lucene刚开始使用者都不注意从用IndexWriter的问题。重用LuceneIndexSearcher也可以更好地利用Java垃圾回收功能,使得到更快速的搜索和更省得利用存储。这里给出一些JSP代码,主要是存储applica

6、tion的IndexWriter并可能在以后网页中或许会用到的代码。indexSearcher=(IndexSearcher)application.getAttribute("searcher");if(indexSearcher==null){indexSearcher=newIndexSearcher(indexPath);application.setAttribute("searcher",indexSearcher);}构造一个Lucene搜索命令(Query)StringqueryString="example"

7、;try{Queryquery=QueryParser.parse(queryString,"content",newStandardAnalyzer());}catch(ParseExceptione){System.out.println("LuceneParseException:"+e.getMessage);e.printStackTrace();}用Lucene来搜索(Search)Hitshits=null;try{Hitshits=indexSearcher.search(query);catch(IOExce

8、ptione){System.out.println("LuceneSearchingException:"+e.getMessage());}Lucene的结果保存在Hits中。打印Lucene得到的结果HitsinthitCount=hits.length();for(i

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。