基于Javaweb的搜索引擎的实现.doc
文本预览下载声明
仁爱学院
长实习设计说明书
题目: 基于Java web的搜索引擎的实现
系 别:
专业班级:
学 号:
学生姓名:
指导教师: 蒋辉
2012年 11 月 20 日
目录
1.项目管理 4
2.需求分析 6
3.数据库设计 10
4.概要设计 12
5.详细设计 15
6.项目测试 23
7.安装手册 24
8.使用手册 31
参考文献 35
1项目管理
该部分文档编写负责人 该部分文档复核人 最终版本 1.1
项目开发计划必须由粗到细给出,每项任务要落实到人且规定该任务的起止日期和时间;明确每个阶段提交文档的日期和时间。保证任务按时正常完成。
1.2
简单部署人员任务分配以及时间分配
确定组长胡杨实现Heritrix网络爬虫的页面摄取,Lucene全文搜索,建立索引,根据索引进行搜索,运用tika页面解析器进行html页面的解析,运用mmseg4j分词器进行中文分词,编写功能完整的搜索函数,并用junit进行简单的测试。确定组员李文杰主要工作是设计及实现主界面和搜索结果界面的设计,建立单表数据库的建立,在数据库中添加有关页面信息,设计和实现数据访问类,设计和实现数据元素的实体类,设计搜索结果页面的信息反馈,以及进行本项目的软件测试工作。
9月20日至9月30日,组长与组员商讨搜索引擎的建立原理,去图书馆借阅相关书籍。
确定搜索引擎实现功能为学院官网新闻板块的全文搜索,运用apache公司的开源项目Lucene实现全文搜索的索引建立及对索引的搜索功能,运用网络爬虫Heritrix对被搜索页面进行摄取,运用开源jar包tika对已摄取的html页面进行解析,中文分词部分使用sougou中文分词器。
10月8日至10月15日,配置Heritrix_1.14网络蜘蛛,进行目标网页的摄取,进行主界面的初步设计,建立数据库,在myeclipse中配置Lucene_3.5,对摄取的html页面进行索引的建立,并编写junit测试类进行阶段性测试。
10月16日至10月23日,对建立的索引编写搜索实现类,并调试,初步设计搜索引擎的搜索结果显示页面。
10月24日至10月31日,在项目中加入中文搜索分词器,在数据库中加入被搜索的页面信息,编写数据访问类,编写页面实体的实体类。
11月1日至11月7日,在项目中加入tika页面信息提取器,实现完整的搜索功能,将搜索结果在搜索结果页面显示出来。
11月8日至11月15日,最后完善项目,在搜索页面中加入结果条数显示,在新页面中打开结果页面的链接,增加结果分页,每页6条结果。
11月16日至11月20日,撰写本报告,撰写演示文稿。
2.需求分析
该部分文档编写负责人 该部分文档复核人 最终版本
2.1
项目的功能需求分析
2.2
本项目实现功能:
对学院官网新闻板块进行分析,建立索引。
在主页面输入要搜索的关键字,点击“搜索一下”按钮,稍等,会自动跳转到搜索结果页面。
在结果页面,点击tjrac搜索,能回到主页面,在后面的文本框中再次输入搜索关键字,点击“搜索一下”按钮,能重新进行搜索。
搜索结果显示页面中,能显示搜索结果的条数,并带有分页功能,每页显示6条结果,点击“下一页”,“上一页”进行跳转,也可以输入页面序号进行直接跳转。
结果页面显示搜索的结果的标题,标题同时又是超链接,点击能够在新的页面中打开对应的网页,还会显示结果的中文摘要,对应网址等。
系统简单流程图:
(图 2-1)
8.系统数据流图:
(图 2-2)
9.用例图
(图 2-3)
3. 数据库设计
该部分文档编写负责人 该部分文档复核人 最终版本 3.1
数据库表格设计与实现。
3.2
表3-1 page
字段名称 含义 类型 是否为空 约束 自动增长 id varchar(25) NO 主键 否 name varchar(80) NO content varchar(120) NO address varchar(100) NO
3.3
数据库编写脚本:
CREATE TABLE `page` (
`id` varchar(25) NOT NULL COMMENT 页面编号,
`name` varchar(80) NOT NULL COMMENT 页面名称,
`content` varchar(
显示全部