首页 > 范文大全 > 正文

基于JAVA技术的搜索引擎设计与实现

开篇:润墨网以专业的文秘视角,为您筛选了一篇基于JAVA技术的搜索引擎设计与实现范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

摘要:为环境领域设计的搜索引擎软件缩写是SEES(Search Engine for Environmental Software),是具有完善的功能的搜索引擎。SEES软件提供管理者功能;使用者功能和创作者功能。所使用的技术是JSP、JavaBeans、JavaScript、SQL。SEES可以成功的运行于Linux和Windows XP系统上。

关键词:Java;搜索引擎;SEES

中图分类号:TP311文献标识码:A文章编号:1009-3044(2007)03-10679-02

1 引言

SEES(针对环境科学的搜索引擎软件)主要提供了三个方面的功能。为普通用户提供搜索、查找工具、下载、保存、浏览网上信息的功能,使普通用户能从该网站获得保护环境的基本概念,并能从中了解怎样调整自己的日常行为和习惯来改善环境质量,等等;为网站管理者提供了特权功能,可以补充、修改、更新网站的功能;为软件开发者提供提交软件的接口。

主要有以下特点:

(1)既包括内容搜索,又包括主题搜索。一般的网站要么是内容搜索,要么是主题搜索,很少有两个部分都包括的。

(2)可以自动根据数据库内容产生网页(在管理员部分)

(3)管理员拥有全部的权限,可以进行数据库的全部更新;可以重新将网页内容汇入数据库;同时过滤了常用的词汇。

(4)软件作者可以增加软件信息进入数据库,对自己的软件有修改及删除权限,但是不能对其他人的软件进行更改。

(5)用户的信息及权限都储存在数据库中。

通过本软件,不论你是普通用户、环境研究人员,还是政府部门的管理人员,都可以从中获得所需要的信息――专用于环境科学的信息。为减少污染、合理评价、充分利用有限的资源提供有价值的信息,使保护环境深入到社会的每个地方。

2 探究SEES的主要模块

SEES是一个网站,它提供了三个主要的功能:更新站点,搜索信息,和提交软件。包括三个模块:以完成更新站点为主要工作的管理者模块;为完成搜索信息工作的用户模块;和提交软件的创作者模块。本节将说明三个主要模块的功能。

2.1 管理者模块

管理者模块,顾名思义是为网站管理者设计的,他们拥有一些特权,以管理者身份进入网站,可以修改网页和数据库,包括信息的更新、登录网站人员的授权等。

图1给出了管理者登录的页面,登录者要输入正确的ID号和PASSWORD才能以管理员的身份进入。进入到管理者主页(如图2)才能履行管理员的职责。

图2中“CREATE PAGES”按钮是用于添加信息到数据库的。“BACK TO ADMIN HOME”按钮中退出管理者页面回到主页的。

图1 管理者登录页面

图2 管理者主页

2.2 用户模块

用户模块是此软件中最大的并且是非常重要的部分。在此模块中,用户(网络访问者)可以查寻和搜索信息。每一个上网的人都可以进入该网页并使用其提供的查寻和搜索工具进行查寻、搜索,或者浏览网络上的相关信息。

网站上有两种方法供用户使用:搜索引擎和分类目录。

搜索引擎,采用关键字搜索法,关键字可以用“与(AND)”、“或(OR)”逻辑组成表达式,依次搜寻。对表达式的判断有“模糊”和“精确”两种。模糊查寻是指搜索内容中有与表达式部分相同的即为成立;精确查寻,指所搜索内容中必须有与表达式完全一至的,才算成立。逻辑成立的内容就会列表显示,供用户查阅。

图3 软件搜索页

分类目录,由软件本身提供相关学科索引目录供用户选择,待用户选定目录后软件自动进行网上搜索,然后给出结果列表。

2.3 创作者模块

这部分是为软件开发者提供的。软件开发人员可以通过该模块,向本网站提交他们的软件(可以是用于补充搜索工具的软件,也可以是针对环境测评或保护的相关新方法和新举措)。网站管理者根据需要添加到网站数据库中。

图4 创作者页

3 SEES体系结构

软件体系结构是对子系统、软件系统组件以用它们之间相互关系的描述。子系统和组件一般定义在不同的视图内,以显示软件系统的相关功能属性和非功能属性。系统的软件体系结构是一件人工制品。这是软件设计活动的结果。

功能属性用来处理系统功能性的特定方面,与特定的功能需求相关。这在前面已经描述了。

非功能属性定义了未被功能属性描述覆盖的系统特征。非功能属性通常解决与一个软件系统的可靠性、兼容性、开销、易用性、维护或者开发有关的方面。非功能属性对于软件开发是非常重要的。首先,软件系统随时间演化。它们必须相应地改变技术、需求和系统环境。因此仅仅恰当分解全部应用任务是远远不够的――系统还必须为变化、扩展和适应做准备。如果软件系统没有完成,尤其当它的寿命很长时,维护起来将会变得困难和昂贵。其次,软件系统的功能性必须遵从总体需求,例如,为了它的总体可操作性、可靠性或效率。为了满足这种需求,需要恰当地设计软件体系结构。

SEES采用在网络软件开发中被广泛使用的三层体系结构如图5:表示层(客户层),应用层,数据层。

图5 SEES 体系结构

表示层:实现软件与用户的界面接口,大多数的应用是基于网络化的。使用的程序设计语言是HTML,CSS和javaSCRIPT的结合。JSP或ASP被用于创建动态网页;

应用层:实现应用软件的逻辑功能,包括以下子层:控制层、处理层、事物对象层和数据访问层。

数据层:管理不断变化的应用信息。这一层使用如MySQL,SQLServer,和Oracle数据库系统。

4 结束语

SEES已具有内部的搜索引擎全部的功能,并可以成功的运行于Linux和Windows XP系统上。但还有需要改进的地方,让软件运行的更可靠、更快、对用户更友好、使查寻结果更易读、必要时能给予用户分类分页显示。

参考文献:

[1](美)Bruce Eckel. Thinking in Java[M]. Second Edition.

[2]邓文渊, 陈惠贞, 陈俊荣. ASP与网络数据库技术[M]. 中国铁道出版社, 北京:2003.5.

[3]Amor, D. The E-business(r) evolution. Upper Saddle River, NJ: Prentice Hall PTR,2002.

本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文。