基于Lucene的全文检索网络资源共享平台的开发毕业论文
2020-02-19 18:00:53
摘 要
随着我国经济的发展,互联网步入千家万户。网民的增多,无疑给检索网络资源带来了巨大的挑战,如何准确快速的设计基于Lucene的全文检索网络资源共享平台成为急需解决的问题。伴随着计算机技术的成熟,本基于Lucene的全文检索网络资源共享平台应运而生,此网站可以有效的解决以上问题,使信息共享系统化、高效化。
基于Lucene的全文检索网络资源共享平台具有灵活的一体化设计方式,圆满完成了整个系统的全面设计。该系统中设立了一个管理员,他可以进行文件管理等各种操作。系统功能齐全,可以快速的查询相关的各种信息,用户可进行文件上传,支持word、excel、pdf、html等格式的文档信息。
本基于Lucene的全文检索网络资源共享平台的设计与实现是基于B/S结构,采用Lucene搜索引擎,MYSQL来实现对于数据的存储和操作,充分保证了系统的稳定性、安全性
关键词: B/S结构;MYSQL数据库;网络资源共享平台;Lucene ;全文检索
Abstract
With the development of our country's economy,the Internet has entered thousands of households.The increase of netizens has undoubtedly brought great challenges to the retrieval of network resources. How to accurately and quickly design Lucene-based full-text search network resource sharing platform has become an urgent problem to be solved. With the maturity of computer technology, this Lucene-based full-text search network resource sharing platform emerges as the times require. This website can effectively solve the above problems and make information sharing systematized and efficient.
The Lucene-based full-text search network resource sharing platform has a flexible and integrated design approach, which successfully completes the overall design of the entire system. An administrator has been set up in the system, which can perform various operations such as file management.. The system is fully functional and can quickly query related information. Users can upload files and support document information in the format of word, excel, pdf and html.
The design and implementation of the Lucene-based full-text search network resource sharing platform is based on the B/S structure. The Lucene search engine and MYSQL are used to realize the storage and operation of data, which fully guarantees the stability and security of the system.
Key words: B/S structure; MYSQL ; network resource sharing platform; Lucene ;full-text search
目录
第1章 绪论 8
1.1 研究背景 8
1.2 研究目的与意义 8
1.3 研究目标 9
1.4 设计原则 9
第2章 关键研究技术 11
2.1 全文检索 11
2.2 Lucene 11
2.3 MYSQL数据库 11
2.4 B/S结构 12
2.5 JavaScript 12
第3章 系统分析 13
3.1 可行性分析 13
3.2系统设计规则 13
3.3 系统UML图 13
3.3.1 管理员用例图 13
3.3.2用户用例图 14
3.4 性能需求 14
3.4.1 系统的安全性 14
3.4.2 数据的完整性 14
3.5流程分析 15
3.5.1 系统开发流程 15
3.5.2 系统注册、登录流程 15
3.5.3 构建索引流程与文件搜索流程 16
第4章 系统设计 17
4.1功能模块设计 17
4.2 信息实体E-R图 17
4.3 界面设计 18
4.3.1 登录界面 18
4.3.2管理员主界面 19
4.3.3文件管理 19
4.3.4用户注册界面 19
4.3.6我的文件界面 20
4.3.7搜索 20
第5章 系统功能的实现 21
5.1 登陆注册模块 21
5.1.1拉动滑块验证 21
5.2文件上传、下载、修改模块 22
5.2.1文件上传 22
5.2.2文件下载 22
5.2.3文件修改 23
5.3 文件读取模块 23
5.4搜索模块 24
5.4.1 Lucene构建索引 24
5.4.2 Lucene搜索 24
第6章 测试与总结 25
6.1 软件测试的目的与意义 25
6.2 可用性测试 26
6.3 性能测试 26
6.4 测试结果分析 26
6.5总结 27
参考文献 1
致谢 2
- 绪论
1.1 研究背景
计算机应用已随着科技的发展逐步成熟,已然渗透入人类社会各种领域,在方方面面大放异彩,成为众多项目中不可替代的一环。现在是信息时代,当前时代信息不可谓不重要,那么如何达到信息的高速共享成为的瞩目的焦点。从十几年前的短信、飞信,QQ,信息的交流也逐渐变得多种多样,信息交换的平台也数不胜数,一个优秀的信息共享平台需要的是什么?从效率,成本,容量,寿命甚至易用性都要考虑到。传统的基于Lucene的全文检索网络资源共享平台选择基于文本、纸张的介绍,已经无法满足当今社会的发展需求,效率低,容易出错,不能及时更新信息,这使得我们急需对基于Lucene的全文检索网络资源共享平台体系进行改革。
计算机的引入、成熟,越来越多基于计算机平台的查询系统被人们使用,基于Lucene的全文检索网络资源共享平台也不例外,使用计算机平台对基于Lucene的全文检索网络资源共享平台进行管理,给基于Lucene的全文检索网络资源共享平台管理人员以及用户都带来了方便,是管理走向现代化的标志。计算机及其查询软件的运用,使基于Lucene的全文检索网络资源共享平台的速度和效率呈几何倍数提高,推动了基于Lucene的全文检索网络资源共享平台现代化的发展,有利于更好的为用户服务。用户应通过各种方式和手段不断加强自身的学习和改进,并适应不断变化的工作环境和查询方法。对于用户来说,他们可以更便利的使用查询系统进行网络资源的全文检索。
1.2 研究目的与意义
根据最新的调查,在此之前,对基于Lucene的全文检索网络资源共享平台相关问题的管理通常是基于文本、表格和其他纸质媒体的手工处理,上传和下载信息的统计和验证通常是通过手工检查和验证进行的,其中包含大量信息。但是,在数据处理方面,工作量大,容易出错,其次是大量的数据和数据丢失,这些是不容易发现的。这导致了网络资源共享平台工作的混乱,为了实现网络资源共享平台的高效查询,开发基于Lucene的全文检索网络资源共享平台是必要的。
早在几十年前,欧美发达国家便开始利用计算机来开发了许多共享系统,来提高共享效率,基于Lucene的全文检索网络资源共享平台也不例外。毋庸置疑的是,我国信息化起步落后于国外,这么多年过去,进度还是有所落后。我国计算机共享处于初级阶段,计算机共享制度还不成熟,共享立法进程也十分的缓慢,导致基于Lucene的全文检索网络资源共享平台的共享工作处于传统的共享模式,手工记录,各方面共享工作均不完善,效率极低。近年来,随着人们对计算机计算的认知,人们开始利用计算机平台开发各种软件,来适应社会发展需求,基于Lucene的全文检索网络资源共享平台也应运而生。基于Lucene的全文检索网络资源共享平台可以使共享效率更高,使其更加规范化和信息化以满足人们的需求。
1.3 研究目标
本设计首先从整体上掌握系统涉及的相关计算机知识,并进行基本的系统分析。系统分析是程序开发的重中之重,它可以使设计程序更好、更充分地显示出来。为了使设计方案更好、更充分地展示,必须事先进行调查研究。要详细分析新系统的功能,才能更方便准确的进行系统设计。该系统平台利用MYSQL数据库架构,设计使用过的数据库表,进行系统分析,为系统奠定了坚实的技术基础。本设计首先掌握了整体系统的相关技术,并进行了基本的系统分析。
再次研究开发系统所使用的数据库,设计数据库信息。
最后研究各个功能模块,利用开发工具完成系统开发。
基于Lucene的全文检索网络资源共享平台开发目标如下:
1.操作简单,页面布局清晰明了;
2.即时可见:管理员通过后台查询,添加的信息可以立马展现在相应的位置,便于用户可见。
3.功能完善:用户可以进行文件上传,文件修改,文件删除,支持各种格式的文档信息。(例如office的word,txt,pdf,excel,不过不支持图片和wps的word)
1.4 设计原则
这次是项目设计一个基于lucene的全文检索网络资源共享平台,简而言之就是设计一个网站,搜索引擎是lucene,可以实现全文检索,那么如何才能设计一个好的网站也是我关注的目标之一。为了避免各种各样的问题,需要经过详细的规划,包括市场调查,参考别的网站,和网站设计者讨论网站的规模成本等问题等。同时,大型计算机网站系统必须有正确的设计理念,逐步形成完善的网络。通过合理选择数据结构,网络结构,操作系统和系统开发环境,使得计算机在数据查询上的优势最大化。系统开发原则按照需求如下所示:
- 有效性:事实上,这里提到的有效性包括两个方面,即有用性和可用性。实用性是指网站满足用户需求的潜在功能,可用性是指经由网站实现系统的本领。因此,可以看出,如果网站运行不正常或设计不是很好,不是一个好网站。
2、高可靠性:通过合理的网络设计和软硬件选择,确保了网站的可靠性和容错性。
3、高安全性:在设计中充分利用网络软硬件所能提供的各种安全措施,保证用户资源的共享,充分考虑系统和数据资源的灾难恢复、备份和恢复要求。为了确保主数据的安全,我们设置操作级别的同时备份数据库,设置不同的角色以确保每个步骤的操作权限,这可以由管理员设置。
4、先进性:使用世界上最先进的数据库技术,使用JSP作为开发工具,MYSQL作为网站的数据库。系统采用的技术基于微软平台(win10),有效降低了系统运行成本,大大提高网站的稳定性和可维护性。
5、开放性:本网站所有设计均按照国际公认标准进行。
- 关键研究技术
2.1 全文检索
计算机索引程序扫描文章字词并构建索引,用户查询的时候检索程序会根据索引进行搜寻,并反馈结果。
这种搜索方式要注意索引数据库的建立和维护,它是全文检索系统的基础,架构和组织直接影响检索效率。提供快速有效的检索机制能在基本的单字符串检索之外,还支持各种高级检索的功能,方便使用者使用搜索引擎,无论是查询效率还是使用体验都会是一种巨大的提升。
2.2 Lucene
Lucene的面世至今已经有了十多年,但是依旧被广泛利用,在各种博客和论坛都在被讨论着,它的热度经久不衰,这已经足够证明它是一种优秀的全文搜索引擎。不仅如此,它的特点还有低成本,高效,易于研究与改造等。它定义了一种与运行使用平台,编写平台没有关联的索引文件格式,并且将系统的核心组件设计为抽象类。例如文件储存,它被封装在类级面向对象的处理中。
2.3 MYSQL数据库
数据库开发的技术是无比重要的,区别于软件开发,它对软件系统的数据结构研究工作有必不可少的作用。数据库的设计步骤包括数据库设计、创建、调试和测试。数据库开发最重要的方面是检查一个发展良好的数据库是否能够高效运行。一般数据库的设计要求必须符合第三范式,这也是数据库设计规则之一。这样可以让数据库中的数据具有良好的结构,并在增加数据库中的数据的过程中生成非常少的冗余数据信息。
该项目使用MYSQL为数据库。 MYSQL服务器是一个很好的微软数据库系统,适用中小型数据库,而且MYSQL服务器具有一致的微软风格,于是我选择MYSQL服务器本次项目的数据库。
通用数据库分为两类,关系数据库(Oracle,DB2,MyMYSQL,MYSQL Server)和非关系数据库(NoMYSQL,MongeDB)。不同的数据库自然各有各的优点和缺点,这里不做详细描述。
MYSQL同时采用不同的编译器来验证和确认源代码的可移植性;支持一体机、免费软件、惠普-UX、Linux、苹果操作系统、NovellNetware、OpenBSD、OS/2包装、Solaris、视窗及其他操作系统;API可以跨平台驱动;为了让中央处理器资源得到充分的运用还支持多线程;提供大量数据库连接通道例如JDBC,ODBC;它可以在具有许多记录的大型数据库上操作。一般来说,MYSQL是为满足普通个人客户和中小企业的需求而设计的,因为MYSQL是开源软件,所以可以大大降低整体成本。
2.4 B/S结构
为了极大的简化客户端的工作负载,可以选择在具有三层架构的浏览器/服务器模式系统。用户经由浏览器向网络上分布的服务器发送请求,它们代替客户端来承担巨量工作,例如访问数据库和调用应用程序。客户端只需要安装少数软件保证正常运行。
这是一种新兴的软件架构,该体系囊括了呈现逻辑层、控制逻辑层和数据呈现层。它们既独立又关联。随着B/S架构的逐步成熟,为了节省开发代价,现在还可以结合浏览器脚本语言,例如360,firefox,chrome等还有专门的脚本/拓展插件下载页面,它们通过安装轻量化脚本便能实现原本只能靠软件才能实现的功能。
2.5 JavaScript
我选择用Javascript设计交互式网页。JavaScript是一种由工具和情况驱动的用户端脚本语言,相对来说不那么危险。它还可以在客户端Web设计的各种脚本语言中使用,通常可以用于添加HTML网页的动态特性,例如对所有用户操作的反馈。JavaScript的一个关键角色是面向对象的函数,随着基于对象程序的发展,程序的设计可以更加直接、系统和可重用。JavaScript的应用能够让网页和客户产生互动,有一种即时、动态的关系,这样的网页呈现的内容自然十分丰富和精彩。在该系统中,许多设计都采用了javaScript技术,例如验证用户输入数据的有效性。
- 系统分析
3.1 可行性分析
所有系统的设计都可能在时间和空间上受到制衡。因此,当我们开始设计每个项目时,必须对系统进行可行性需求分析。只有这样,我们才能减少项目带来的危害以及人力、物力和财力的损失。
3.2系统设计规则
不管哪个系统应该有自己的设计规则,这个系统具备如下重要设计指标:
- 简单性:在保证系统成功实施的前提下,基于Lucene的全文检索网络资源共享平台的操作变得更加简单非常重要。
- 目标:系统设计的重点是方便用户查询基于Lucene的全文检索网络资源共享平台的情况,便于管理员查询基于Lucene的全文检索网络资源共享平台。它非常具有针对性。
- 适用范围:适用范围广,可以使用所有基于Lucene的全文检索网络资源共享平台。
3.3 系统UML图
3.3.1 管理员用例图
3.3.2用户用例图
3.4 性能需求
3.4.1 系统的安全性
1.为了查询基于Lucene的全文检索网络资源共享平台的信息,需要通过用户名和密码进行登录。未经授权的用户将不能以任何方式登录系统并上传任何文件,这确保了系统的安全性。
2.在不同的地方中设置了不同的权限,只有系统管理员使用模块才不会受到限制。
3.4.2 数据的完整性
1.所有记录的信息应保持全面,记录的信息内容不能为空。
2.各种数据之间的相关性应该保持正确。
3.相同的数据在不同的记录中应该是一致的。
3.5流程分析
3.5.1 系统开发流程
3.5.2 系统注册、登录流程
3.5.3 构建索引流程与文件搜索流程
- 系统设计
4.1功能模块设计
基于Lucene的全文检索网络资源共享平台主要包括两大块,即系统管理员和用户。许多小的功能模块从大模块中被分了出来。
以上是毕业论文大纲或资料介绍,该课题完整毕业论文、开题报告、任务书、程序设计、图纸设计等资料请添加微信获取,微信号:bysjorg。
相关图片展示: