目 录
目 录 IV
1 绪论 1
1.1 项目背景 1
1.2 国内外发展现状及分类 2
1.3 本论文组织结构介绍 3
2 相关技术介绍 5
2.1什么是搜索引擎 5
2.2 sqlserver数据库 6
2.3 Tomcat服务器 7
3 搜索引擎的基本原理 8
3.1搜索引擎的基本组成及其功能 8
3.2搜索引擎的详细工作流程 11
4 系统分析与设计 14
4.1系统分析 14
4.2系统概要设计 14
4.2系统实现目标 15
5 系统详细实现 16
5.1实现环境配置 16
5.2功能实现 16
5.2.1 建立索引 16
5.2.2 文件搜索实现 18
5.2.3 数据库的连接配置 20
5.2.4 数据库搜索实现 20
5.2.5 后台数据编辑实现 22
6 系统测试 24
6.1测试重要性 24
6.2测试用例 25
结 论 27
参 考 文 献 28
致 谢 29
3 搜索引擎的基本原理
3.1搜索引擎的基本组成及其功能

图3-1 搜索引擎的基本组成
由上图可知,搜索引擎程序可以化分为搜索器子程序、索引器子程序、检索器子程序以及用户接口子程序等模块;存储器以及存储桶是用来存储所检索到的各种资源的。
搜索引擎程序的组成结构具体如下:
l.搜索器 (Crawler)
搜索器,顾名思义,就是用于在互联网中探索、寻找信息,最终的目的是为了把信息存储在存储单元中的。这种计算机程序,需要日夜不停地处于运行的状态,为的是可以尽可能的更快地搜集更多的新信息,这些信息的种类是多种多样的,包括有HTML格式、XML格式、字处理文档格式以及多媒体信息等等,此外搜索引擎还需要定期更新存储器里的信息。
4 系统分析与设计
4.1系统分析
经过对搜索引擎的研究同时与Lucene自身的特性相结合,将本次设计所需要实现的功能阐述如下:
支持桌面文件搜索,格式包括txt、doc、xls和ppt;
支持分词查询
支持全文搜索
能够高亮显示搜索关键字
显示查询所用的时间
显示搜索历史、过滤关键字
分词查询与全文搜索这两项功能,我们都可以利用Lucene本身自带的库加上相关算法就可以完成设计了,为了使得关键字的高亮度这一问题得到解决,显然,我们需要利用Highlighter的辅助,通过数据库持久化保存数据。
4.2系统概要设计
在我们进行需求分析的时候,制定的用例以及领域模型都可以直接的带入到设计阶段,我们粗略设计的搜索引擎系统的构架如下:

图4-1 系统总体架构
4.2系统实现目标
希望实现一个可用于海量信息快速搜索的个性化引擎,它应该具有快速、便捷和精确等特性,并且能够一目了然而看到搜索耗时,关键字高亮度显示等等个性化效果。实现时希望不需要高配置的硬件资源以及复杂的环境配置或搭建,幸运的是开源Lucene库给我们提供了可能。

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><base href="<%=basePath%>"><title>基于Lucene的搜索引擎的研究与实现</title><meta http-equiv="pragma" content="no-cache"><meta http-equiv="cache-control" content="no-cache"><meta http-equiv="expires" content="0">    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"><meta http-equiv="description" content="This is my page"><link rel="stylesheet" href="PublicStyle.css" type="text/css"></link></head><body><center><div><input type="button" onClick="javascript:location.href='index.jsp'" class="btnClass_100px_A" value="文件搜索" />&nbsp;&nbsp;<input type="button" onClick="javascript:location.href='index2.jsp'"  class="btnClass_100px_A" value="数据搜索" /></div></center></body>
</html>













基于Web的搜索引擎检索系统(Java+Lucene+SqlServer)相关推荐

  1. 基于java的网上花店销售系统_基于web的花店销售系统的设计与实现

    基于web的花店销售系统的设计与实现(论文13000字) 摘要:本系统是一个相对简单的基本应用系统,主要满足传统的花店运营需要,将自己的销售渠道扩展到网上,通过简单的管理,提供给最终消费者产品的展现. ...

  2. 基于JAVA基于Web的上门家教系统的设计与实现计算机毕业设计源码+系统+mysql数据库+lw文档+部署

    基于JAVA基于Web的上门家教系统的设计与实现计算机毕业设计源码+系统+mysql数据库+lw文档+部署 基于JAVA基于Web的上门家教系统的设计与实现计算机毕业设计源码+系统+mysql数据库+ ...

  3. java点餐系统实验报告_JAVA课程实践报告 基于web的点餐系统毕业设计.doc

    JAVA课程实践报告 基于web的点餐系统毕业设计 大连理工大学城市学院 JAVA课程实践报告 题目:基于web点餐系统 学院:计算机工程学院 班级:07软日3班 指导教师: 杨俊生 学生姓名:李杰伟 ...

  4. SSM毕设项目基于web的在线订餐系统sbh8k(java+VUE+Mybatis+Maven+Mysql)

    SSM毕设项目基于web的在线订餐系统sbh8k(java+VUE+Mybatis+Maven+Mysql) 项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuil ...

  5. java计算机毕业设计基于Web的上门家教系统的设计与实现源程序+mysql+系统+lw文档+远程调试

    java计算机毕业设计基于Web的上门家教系统的设计与实现源程序+mysql+系统+lw文档+远程调试 java计算机毕业设计基于Web的上门家教系统的设计与实现源程序+mysql+系统+lw文档+远 ...

  6. springboot基于web的摩托车销售系统的设计与实现毕业设计源码031706

    基于web的摩托车销售系统的设计与实现 摘 要 信息化社会内需要与之针对性的信息获取途径,但是途径的扩展基本上为人们所努力的方向,由于站在的角度存在偏差,人们经常能够获得不同类型信息,这也是技术最为难 ...

  7. 【项目精选】基于Web的机票预订系统

    文章目录 1 摘 要 2 系统相关技术概述 2.1 Java web 2.2 三大框架SSM 2.3 前端框架AngularJS 2.4 数据库MySQL 2.5 数据库Redis 2.6 开发工具E ...

  8. 基于web的摩托车销售系统的设计与实现 毕业设计-附源码031706

    基于web的摩托车销售系统的设计与实现 摘 要 信息化社会内需要与之针对性的信息获取途径,但是途径的扩展基本上为人们所努力的方向,由于站在的角度存在偏差,人们经常能够获得不同类型信息,这也是技术最为难 ...

  9. (附源码)计算机毕业设计SSM基于web的网上订餐系统

    (附源码)计算机毕业设计SSM基于web的网上订餐系统 项目运行 环境配置: Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(I ...

最新文章

  1. Android 入门开发
  2. 移动master 数据库
  3. 【学习笔记】C#中的单元测试
  4. java swing 传值_java swing 窗体之间怎么传值?
  5. iframe嵌套页面 跨域_跨域解决方案
  6. 使用基于 WebRTC 的 JavaScript API 在浏览器环境里调用本机摄像头
  7. Hadoop精华问答:Hadoop框架最核心的设计是?
  8. asp.net 安装element ui_Vue+Element环境搭建
  9. 互联网人必看的中台理论,阿里腾讯架构师用大白话讲出来了
  10. JD_Source Code for problem 1581
  11. Black-Scholes期权定价公式
  12. 怎样锁定计算机本地磁盘,win7系统本地磁盘加密的操作方法
  13. 使用PE镜像修改VMware中Windows镜像的方法
  14. Docker篇之镜像打标签tag
  15. asp.net(c#)中IsPostBack是什么意思
  16. css,sass,scss和less的区别
  17. HTTP Referer简介
  18. 非计算机专业全国壹级,非计算机专业专科学生全国计算机一级等级考试应试策略...
  19. java马士兵网络编程_学习笔记-马士兵java - 网络编程
  20. Linux命令解读(一):head -n 80 /dev/urandom | tr -dc A-Za-z0-9 | head -c 22

热门文章

  1. 解决pyqt5 无法初始化Qt平台插件的问题
  2. AutoLISP-快速更正等高线高程
  3. Linux操作系统实验2
  4. [软件工具][windows]pdf二维码条形码识别重命名工具使用教程
  5. 倾听用户声音,从主流应用商城的APP评论开扒
  6. C# ArcGIS 三维地图 arcgloblecontrol 基础操作 加载地图 漫游 放大 缩小
  7. 命令方式恢复PostgreSQL数据库
  8. 【学习笔记】 C# 基础
  9. 打造一个高逼格的android开源项目——小白攻略
  10. 2021同等学力计算机专业--数学国考真题模拟考试