用java编写搜索擎用java编写搜索引擎.docVIP

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

1.1.1 准备工作环境(10分钟) ?2009-10-29 10:02 ?罗刚 ?电子工业出版社 ?我要评论() 摘要:《自己动手写搜索引擎》第1章遍历搜索引擎技术,本章从快速实现基本的搜索入手,然后深入展开分析搜索的基本技术。本节为大家介绍准备工作环境(10分钟)。 标签:搜索引擎??自己动手写搜索引擎 Oracle帮您准确洞察各个物流环节 第1章? 遍历搜索引擎技术 搜索引擎是我们每天上网经常使用的功能,本书介绍的搜索技术需要Java编程语言基础。本章从快速实现基本的搜索入手,然后深入展开分析搜索的基本技术。 1.1? 30分钟实现的搜索引擎 首先从一个简单的搜索引擎入手,实现一个简单的指定目录文件的搜索引擎。实现之前需要读者具有Java开发方面的基础知识。 1.1.1? 准备工作环境(10分钟) 首先要准备一个Java的开发环境。当前可以使用JDK 1.6。JDK 1.6可以从Sun的官方网站下载得到。使用默认方式安装即可。 然后要使用的是一个用来管理搜索引擎索引库的jar包,叫做Lucene。目前可以从/java/docs/index.html下载到最新的Lucene,当前的版本是2.3。另外,使用集成开发环境Eclipse,其开发界面如图1-1所示。 ? (点击查看大图)图1-1? Java开发界面 如果需要用Web界面搜索,还要下载Tomcat,当前可以从/下载到,推荐使用Tomcat 5.5以上的版本。 然后增加Tomcat的内存使用量,防止内存溢出。 如果是在Linux下,可以用vi编辑器修改./catalina.sh文件,增加行: JAVA_OPTS=-Xmx600m? 如果是在Windows下,可以用文本编辑器记事本修改./catalina.bat文件,增加行: set?JAVA_OPTS=-Xmx600m? 【作者提示】如果不增加内存使用量,运行时可能会出现java.lang.OutOfMemoryError异常。 1.1.2 编写代码(15分钟) ?2009-10-29 10:02 ?罗刚 ?电子工业出版社 ?我要评论() 摘要:《自己动手写搜索引擎》第1章遍历搜索引擎技术,本章从快速实现基本的搜索入手,然后深入展开分析搜索的基本技术。本节为大家介绍编写代码(15分钟)。 标签:搜索引擎??自己动手写搜索引擎 Oracle帮您准确洞察各个物流环节 1.1.2? 编写代码(15分钟) 搜索引擎的基础在于对全文索引库的管理,在Lucene中,通过IndexWriter来写入索引库。伪代码如下: 1.创建IndexWriter,准备写索引; 2.遍历要索引的路径; 3.优化索引。 下面是主要的实现代码: public?void?go()?throws?Exception??{ ? ????????long?start?=?System.currentTimeMillis(); ? ????????if?(verbose)?{ ? ????????????System.out.println(Creating?index?in:??+?indexDir); ? ????????????//创建索引目录或者建立增量索引 ? ????????????if?(incremental)?System.out.println(-?using?incremental?mode); ? ????????} ? ????????Index?=?new?IndexWriter(new?File(indexDir),?new?StandardAnalyzer(), ? ????????????!incremental);//打开或创建索引库,indexDir是索引存放的路径 ? ???????? ? ????????File?dir?=?new?File(sSourceDir);//待索引的文件存放的路径? ? ????????indexDir(dir);//索引路径? ? ????????index.optimize();//索引优化 ? ????????index.close();//关闭索引库 ? ????????if(verbose) ? ????????System.out.println(index?complete?in?:+(System.? currentTime?Millis()?-?start)/1000); ? }? 下面这段代码把文件内容加到索引库: private?void?indexFile(File?item)?{ ? ????????if?(verbose)?System.out.println(Adding?FILE:??+?item);?? ? ????????New

文档评论(0)

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

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

1亿VIP精品文档

相关文档