(经典的lucene实例代码及详细解析以及lucene结构流程介绍.docxVIP

(经典的lucene实例代码及详细解析以及lucene结构流程介绍.docx

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
(经典的lucene实例代码及详细解析以及lucene结构流程介绍

本文摘要:本文并给出一个经典的lucene全文收索例子代码。该例子功能是从磁盘文档建立索引,搜索该文档中的哪个TXT文件包含所搜索内容。最后再大致介绍Lucene的结构模块,应用流程希望对网友能有帮助。创建索引代码:package luceneL;import java.io.File;import java.io.FileReader;import java.io.IOException;import java.io.Reader;import java.util.Date;import org.apache.lucene.analysis.Analyzer;import org.apache.lucene.analysis.standard.StandardAnalyzer;import org.apache.lucene.document.Document;import org.apache.lucene.document.Field;import org.apache.lucene.index.CorruptIndexException;import org.apache.lucene.index.IndexWriter;import org.apache.lucene.store.LockObtainFailedException;public class createIndex {public static boolean createDocumentIndex(){boolean bool=false;//被索引的目录文件夹File dirpath=new File(E:\\documentTest);//索引文件存放的目录文件夹File indexpath=new File(E:\\Index);//分词,分词有StandardAnalyzer和SimpleAnalyzer两种//lucene是将一句句话,一段话Field,分成一个个词Term进行索引搜索的。Analyzer analyzer=new StandardAnalyzer();try {//向E:\\Index保存建立的索引Index内容//用到IndexWriter类,这里需要传入的三个参数为://(索引目录文件夹,分词)IndexWriter index=new IndexWriter(indexpath,analyzer,true);File[] txtfiles=dirpath.listFiles();long startTime=new Date().getTime();for(int i=0;itxtfiles.length;i++){if(txtfiles[i].isFile()txtfiles[i].getName().endsWith(.txt)){System.out.println(文件+txtfiles[i].getCanonicalPath()+正在索引中。。。);//Read将txt内容存进内存Reader read=new FileReader(txtfiles[i]);//创建Document的实例Document doc=new Document();//将field存进索引的Document//Document添加读取的文章内容(缓存在内存中的文章内容read)doc.add(new Field(content,read));//Document添加文章对应路径信息等 //doc.add(new Field(path,txtfiles[i].getAbsolutePath(),Field.Store.YES,Field.Index.NO));//index加Document,索引创建成功index.addDocument(doc);}}//索引优化optimize(),合并磁盘上的索引文件,以便减少文件的数量,从而也减少搜索索引的时间index.optimize();//注意关闭IndexWriter,立即将索引文件写入到目录磁盘中,生成索引文件index.close();long endTime=new Date().getTime();System.out.println(共花了+(endTime-startTime)+毫秒将文档增加到索引中+indexpath.getPath());bool=true;} catch (CorruptIndexException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (LockObtainFailedException e) {// TODO Auto-generated catc

文档评论(0)

34shart09 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档