聚焦搜索引擎的设计与开发查询系统设计与实现毕业论文(编辑修改稿)内容摘要:

何建一个 最 优秀的索引仍是现在研究工作中需要 去 研究的。 ( 2) 相比较 英文,英文只有 24 个 字母,但是中文 拥有 上千个字,就体现到中文索引面临一个分词问题,如何按 字 按词自动索引, 一直 是目前情报界与语言 界研究 的热点,当然最后应该走的还是计算机自动分词之路。 其次 , 如何实现自动跟踪索引 ,是又一个难题。 ( 3) 凡是 发布到网上的系统,都会考虑到一个信息安全的问题, 在 系统处理能力提高的同时,系统的连接能力也在不断的提高。 但 在 连接能力信息、流通能力提高的同时,基于网络连接的安全问题也日益突出, 如何保证此系统的网络安全 也是 研究工作 中一大难题。 系统开发 的意义 此次开发的系统是聚焦搜索引擎系统。 系统的功能包括:天气查询,新闻查询,用户中文 语句 查询。 所有查询都是系统的前台服务,即面向用户的,方便乘客了解自己 想要的 信息。 对于尚在象牙塔中的莘莘学子,搜索正在悄无声息地改变他们的学习方式。 Inter 与全球电信的迅猛发展使信息资源的“生产”“传播”与“消费”出现了新的格局,信息在网络上的传播速度迅速提升,这使得上网用户获取真正有用的信息越来越难 , 而 开发 此搜索引擎 就 能帮助 用户 解决 从 目前 种类 繁多的信息 中 找到用户真正有用的信息。 本文主要研究内容和组织结构 本文的主要研究内容是 聚焦 搜索引擎 查询系统 的 设计、 分析 和 实现 情况 ,主要包括 页面 的天气查询和 新闻 分类和用户普通 查询方面 等内容, 并对 实现 各个 功能的 模块的 技术 进行 了研究探讨。 论文内容按以下结构安排: ( 1)开发环境和相关技术介绍(第 2 章) ( 2)系统需求分析(第 3 章) ( 3) 查询 系统 的 设计(第 4 章) 蒋波涛: 聚焦搜索 引擎 查询系统 的 设计与实现 6 ( 4)系统编码 (第 5 章) ( 5)测试(第 6 章) ( 6)结论与展望(第 7 章) 其中第 2 章对与课题研究相关的技术作了简要介绍,包括系统开发的集成环境、Servlet技术、 JDBC数据库 连接 技术等,本章是后面各章的铺垫。 第 3章对于系统进行了完整的需求分析。 第 4 章是系统设计部分,包括系统逻辑 思路 设计 、 系统逻辑结构设计 、物理结构设计、 系统 各 功能模块设计以及数据库设计。 第 5 章为系统的关键编码。 第 6 章为系统 实现 后的 测试,对系统各个模块和整体进行功能测试。 20xx 级 计算机科学与技术专业毕业设计(论文) 7 第 2 章 相关技术概述 本文研究的 聚焦 搜索引擎 系统基于 B/S 模式,利用 MyEclipse 集成开发环境和MySQL 数据库管理系统,采用的技术有: Java Servlet API 技术, JDBC 数据库 连接 技术 , 汉语 分词技术。 MyEclipse 集成开发环境 作为一套完整的开发工具集, MyEclipse[4]( MyEclipse Enterprise Workbench ,简称MyEclipse) 企业级工作平台 是对 Eclipse IDE 的扩展,利用它我们 就 可以在数据库和J2EE 的开发、发布,以及应用程序服务器的整合 方面极大的提高工作效率。 它是功能丰富的 J2EE 集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML, Struts, JSF, CSS, JavaScript, SQL, Hibernate。 在结构上, MyEclipse 的特征可以被分为 7 类: 1. J2EE 模型 2. WEB 开发工具 3. EJB 开发工具 4. 应用程序服务器的连接器 5. J2EE 项目部署服务 6. 数据库服务 7. MyEclipse 整合帮助 对于以上每一种功能上的类别,在 Eclipse 中都有相应的功能部件,并通过一 系列的插件来实现它们。 MyEclipse 结构上的这种模块化,可以让我们在不影响其他模块的情况下,对任一模块进行单独的扩展和升级。 简单而言, MyEclipse 是 Eclipse 的插件,也是一款功能强大的 J2EE 集成开发环境,支持代码编写、配置、测试以及除错, 以前版本需先安装 Eclipse。 以后版本安装时不需安装 Eclipse。 蒋波涛: 聚焦搜索 引擎 查询系统 的 设计与实现 8 JDBC 数据库 连接 JDBC[6]( Java Data Base Connectivity,Java 数据库连接)是一种用于执行 SQL语句的 Java API,可以为多种关系数据库提供统一访问,它由一组用 Java 语言编写的类和接口组成。 JDBC 提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序,同时, JDBC 也是个商标名。 有了 JDBC,向各种关系数据发送 SQL 语句就是一件很容易的事。 它可向相应数据库发送 SQL 调用,将 Java语言和 JDBC 结合起来使程序员只须写一遍程序就可以让它在任何平台上运行。 Java数据库连接体系结构是用于 Java 应用程序连接数据库的标准方法。 JDBC 对 Java 程序员而言是 API, 对实现与数据库连接的服务提供商而言是接口模型。 作为 API, JDBC为程序开发提供标准的接口 , 并为数据库厂商及第三方中间件厂商实现与数据库的连接提供了标准方法。 JDBC 使用已有的 SQL 标准并支持与其它数据库连接标准。 JDBC实现了所有这些面向标准的目标并且具有简单、严格类型定义且高性能实现的接口。 JDBC 主要做 三件事:与数据库建立连接、发送 SQL 语句并处理结果 [10]。 Servlet Servlet 是一个 服务器 端 的组件 ,是 J2EE 中比较关键的组成部分(其实学到现在J2EE 里面的 13 个标准才接 触了 3 个,他们分别是 EJB, Servlet, JSP), Servlet 技术的推出扩展了 Java 语言在服务器端开发的功能,巩固了 Java 语言在服务器端开发过程中的地位,而且现在使用非常广泛的 JSP 技术也是基于 Servlet 的原理,JSP+JavaBeanstalk+Servlet 成为实现 MVC 模式的一种有效的选择。 Servlet 本质上也是 Java 类,编写 Servlet 需要遵循 java 的基本语法,但是与一般的 Java 类不同的是Servlet 是只能运行在服务器端的 Java 类,而且必须遵循特殊的规范,在运行过程中有自 己的生命周期,这些特性都是 Servlet 所独有的。 另外 Servlet 和 HTTP 协议是紧密联系的,所以使用 Servlet 几乎可以处理 HTTP 协议所有方面的内容,这也正是Servlet 受到开发人员青睐的最大原因。 Servlet 是对支持 Java 的 服务器 的一般扩充。 它最常见的用途是扩展 Web 服务器 ,提供非常 安全 的、可移植的、易于使用的 CGI 替代品。 它是一种动态加载的模块,为来自 Web 服务器的请求提供服务。 它完全运行在 Java 虚拟机上。 由于它在服务器端运行,因此它不依赖于浏览器的兼容性。 Servlet 是一种服务器端脚本,它是一个特殊的Java 类,继承自 HttpServlet,开发中主要 用于 处理和响应客户端的请求。 Servlet20xx 级 计算机科学与技术专业毕业设计(论文) 9 在容器中运行,其实例的和销毁创建由容器进行控制。 每个 Servlet 的运行 都拥有生命周期:首先, (1)(容器 )创建 Servlet 实例。 然后, init(初始化,显示相关 Servlet实例信息 )。 再是, Service(处理和响应请求 )。 最后, destroy(销毁,释放资源 )[9]。 MySQL MySQL[5]是一个小型关系型数据库管理系统,开发者为瑞典 MySQL AB 公司。 在 20xx年 1 月 16 号被 Sun 公司收购。 而 20xx 年 ,SUN 又被 Oracle 收购 .对于 Mysql的前途 ,没有任何人抱乐观的态度 .目前 MySQL 被广泛地应用在 Inter 上的中小型网站中。 由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了 MySQL 作为网站数据库。 与其他的大型数据库例如 Oracle、 DB SQL Server 等相比, MySQL 自有它的不足之处,如规模小、功能有限( MySQL Cluster 的功能和效率都相对比较差)等,但是这丝毫也没有减少它受欢迎的程度。 对于一般的个人使用者和中小型企业来说, MySQL提供的功能已经绰绰有 余,而且由于 MySQL 是开放源码软件,因此可以大大降低总体拥有成本 [5]。 本系统 中 用 的是 MySQL 版本。 汉语 分词 NLPIR 汉语分词系统 (又名 ICTCLAS20xx),主要功能包括中文分词;词性标注;命名实体识别;用户词典功能;支持 GBK 编码、 UTF8 编码、 BIG5 编码。 新增微博分词、新词发现与关键词提取;张华平博士先后倾力打造十余年,内核升级 10 次。 在 各位ICTCLAS 用户 强烈 的要求 下 ,张华平博士正式发布 ICTCLAS20xx 版本,为了与以前工作进行大的区隔,并推广 NLPIR 自 然语言处理与信息检索共享平台,从本版本开始,系统名称调整为 NLPIR 汉语分词系统。 张博士先后倾力打造十余年,内核升级 10 次,全球用户突破 20 万,先后获得了 20xx 年钱伟长中文信息处理科学技术奖一等奖, 20xx年国际 SIGHAN 分词大赛综合第一名, 20xx 年国内 973 评测综合第一名。 NLPIR 汉语分词系统(又名 ICTCLAS20xx),主要功能包括中文分词;词性标注;命名实体识别;用户词典功能;支持 GBK 编码、 UTF8 编码、 BIG5 编码。 新增微博分词、新词发现与关键词提取; 全球用户突破 20 万,先后获得了 20xx 年钱伟长中文信息处理科学技术奖一等奖,20xx 年国际 SIGHAN 分词大赛综合第一名, 20xx 年国内 973 评测综合第一名。 蒋波涛: 聚焦搜索 引擎 查询系统 的 设计与实现 10 本 系统 需要 对用户输入的查询语句进行 分词 ,所以采用了 网上 免费提供的中科院分词系统,本系统使用的版本为: 20xx 年 UTF8 编码 版。 开放 API 平台 API[8]( Application Programming Interface,应用程序编程接口)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。 基于互联网的应用正变得越来越普及,在这个过程中,有更多的站点将自身的资源开放给开发者来调用。 对外提供的 API 调用使得站点之间的内容关联性更强,同时这些开放的平台也为用户、开发者和中小网站带来了更大的价值。 开放是目前的发展趋势,越来越多的产品走向开放。 目前的网站不能靠限制用户离开来留住用户,开放的架构反而更增加了用户的粘性。 在 Web 的浪潮到来之前,开放的 API 甚至源代码主要体现在桌面应用上,而现在越来越多的 Web 应用面向开发者开放了 API。 具备分享、标准、去中心化、开放、模块化的 Web 站点,在为使用者带来价值的同时,更希望通过开放的 API 来让站点提供的服务拥有更大的用户群和服务访问数量。 站点在推出基于开放 API 标准的产品和服务后,无需花费力气做大量的市场推广,只要提供的服务或应用出色易用,其他站点就会主动将开放 API 提供的服务整合到自己的应用之中。 同时,这种整合 API 带来的服务应用,也会激发更多富有创意的应用产生。 为了对外提供统一的 API 接口,需要对开发者开放资源调用 API 的站点提供开放统一的 API 接口环境,来帮助使用者访问站点的功能和资源 [9]。 当然,开放 API 的站点为第三方的开发者提供良好的社区支持也是很有意义的,这有助于吸引更多的技术人员参与到开放的开发平台中,并开发出更为有趣的第三方应用。 本系统 的天气模块 调用 的是百度 API STORE 里提供 的天气 信息 与 与 城市名开放平台。 20xx 级 计算机科学与技术专业毕业设计(论文) 11 第 3 章 系统需求分析 用户需求分析 用户需求分析分为两个方面,一个是搜索词分析,另外一个是用户搜索意图分析,通过搜索词的分析可以返回一个可能是用户需求的结果列表,通过用户搜索意 图的分析并对搜索结果进行调整,可以获得此用户更加想要的结果列表。 系统可行性分析 在 开发一个系统时,需要对可行性进行分析。 可行性分析可从 环境可行、经济可行、技术可行 3方面 进行分析。 通过方方面面的分析,得出开发此系统的难度几何,开发出来后有没有市场。 若是没有进行可行性分析就匆匆地进行开发,可能导致大问题。 如:开发完系统,并在调试通过正式投入使用后,却发现用户对系统的需求并不大,根本用不到开发的系统,导致系统被淘汰,这样既浪费时间又浪费人力。 又如:系统的市场着实存在,。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。