建立一个搜索引擎(信息检索系统)的点点滴滴
建立一个简单搜索引擎的点点滴滴。
数据只作测试用,markdown一些细节和坑吧。记录点点滴滴。
IDE平台:eclipse;lucene3.6;jdk1.8;tomcat7.0V;
数据部分:
data:
index:
由调用lucene开源包进行对数据集的倒排索引的索引集。
数据准备完成。(生成index不是)
第一步:
打开eclipse并新建一个java web project。并且使用tomcat服务器,没有就下载一个,我下载了7.0的。
导入相关lucene包到这里,这些包不同版本会有区别,到时候用到哪个缺哪个在下载文件夹里的子目录找就行。
比如涉及中文分词的smartcn,
下一步,开始建索引:src建立两个文件,一个是建索引,一个是搜索索引。
这是两个要自己写的文件,代码见最后。
建立好的索引就会像上面的文件夹里的一样差不多形式。
可以用luke查看索引,我这个版本对应的是3.5的luke。选择刚刚的index文件夹。
搜索文件出来的结果:
到这里建立好后台java项目了。
下一步:新建jsp两个,我本来是一个想搞定问题,发现最后还是要建两个,第二个是搞完回来再建立的。
jsp是网页html格式的,调用项目里的java方法。
需要注意的一点是必须导入进来所有要用的包。格式如下:browser那个是我的javaweb项目名。
在body标签下使用:<%%>在里面写java代码调用搜索索引文件就行。
<%
for(int i=0;i<str1.length;i++){
out.print(str1[i]+"<br/>"+"<br/>");
}
%>
类似这样作为输出。
但是到这里还会报异常,说一些包notfound。解决方法如下,如遇到。
1.把相关jar导进web-inf下的lib。
2.把谷歌浏览器设置为默认web打开窗口。
到这里已经可以把后台和前端结合起来了。
下一步:
获取前端输入作为参数传到后台执行代码后返回结果并输出到前端页面上。
类似一个搜索框点击搜索然后返回结果。
这时候就需要建立第二个jsp,
用表单标签做跳转到结果页面。
具体代码:
首页
结果页
这里搞前端参数的搞了我很久才实现了。
完。
最后附上效果图:
点击搜索,
跳转
two文件代码:这里!
。
。
。
。
。
。