网站资源管理框架的研究及其实现
摘 要网站资源管理框架是一个通用的、可扩展的信息管理系统(MIS),其开发主要包括前端应用程序的开发以及后台数据库的建立和维护两个方面,对于前者要求应用程序具有功能完备,易使用,可移植性好等特点,而对于后者则要求建立起数据一致性和完整性强、数据安全性好的库。为此,采用HTML标识语言、JavaScript脚本语言、JSP技术及Microsoft Access数据库技术综合开发,同时,为了便于联网应用,采取Browser/Server模式。系统的功能是实现跨平台,跨领域,跨部门的信息管理,如查询、添加、删除、修改、维护、共享等以及对多用户的管理,并且易于扩展。该软件界面比较清晰明快,主题突出,操作简单,易于使用。本论文主要阐述该系统的开发思想和关键技术,包括系统的分析、系统的设计、系统的实现、系统的运行。关键字:框架;动态网站;信息管理;Browser/Server模式;JSP论文目 录第1章 绪 论11.1 开发网站资源管理框架的意义和必要性11.2 JSP技术实现动态网站的优点2第2章 开发技术与工具42.1 开发技术42.2 开发工具82.3 Browser/Server模式10第3章 系统分析123.1 可行性研究123.2需求分析123.3 数据流图13第4章 系统设计144.1 界面设计144.2 数据库设计144.3 模块设计154.4 网页设计17第5章 系统实现185.1 用户登陆模块的实现185.2 显示模块的实现205.3 用户管理模块的实现215.4 信息添加模块的实现235.5 信息删除模块的实现275.6 信息修改模块的实现285.7 信息查询模块的实现305.8 信息共享模块的实现315.9 系统实现中的几个细节问题33第6章 系统运行346.1 系统测试346.2 技术难点346.3 运行效果356.4 改进意见36结 论37参考文献38致 谢39第1章 绪 论1.1 开发网站资源管理框架的意义和必要性框架(Framework)是整个或部分系统的可重用设计,表现为一组抽象构件及构件实例间交互的方法;另一种定义认为,框架是可被应用开发者定制的应用骨架。前者是从应用方面而后者是从目的方面给出的定义。框架规定了应用系统的总体结构,定义了类和对象的划分,定义了其关键责任,定义了类和对象如何合作,还定义了控制线索。框架预先定义这些设计参数,使应用系统的设计者、执行者能把力量集中在应用系统的细节上,框架收集了该应用领域的设计决策。尽管框架通常包括可以立即投入工作的具体的子类,但它更强调设计复用而不仅是代码复用,这些类为一个特定要求的软件构成一个可复用的设计。当使用框架时,复用了主体部分而编写框架所调用的代码,并必须按特定名字和调用规则来编写操作,从而减少了要做的设计决策,其结果是可以更快地完成应用系统,而且这些系统具有相似的结构,更便于维护,对其使用者来说更加一致。一个框架设计者希望框架的结构可为某领域的所有应用系统工作,对框架设计的任何实质性改变都会大大降低它的益处,因为框架对应用系统的主要贡献是它定义的结构,因此,把框架设计得尽量灵活和可扩展是很必要的。此外,由于应用系统依赖于框架,所以对框架接口上的改变特别敏感,应用系统不得不随着其框架的发展而发展,这时,松散耦合更加重要,否则即使框架的一个小小的变化也会引起较大的反应。框架正逐渐通用和重要起来,它们是使面向对象系统达到最大程度复用的方法,大型面向对象应用系统将包括互操作的框架层,应用系统中的大多数设计和代码都会受到框架的影响。另一方面,信息资源对任何一个单位都至关重要。但是,一直以来人们使用传统的人工的方式管理信息资源,这种管理方式存在着许多缺点,如效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。随着科学技术的不断提高,计算机科学以及网络技术日渐成熟,其强大的功能已为人们深刻认识,它已经进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机网络对信息资源进行管理,具有着手工管理所无法比拟的优点,如检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高信息资源管理的效率,也是一个单位的科学化、正规化管理,与世界接轨的重要条件。如今,各种各样的信息管理软件层出不穷,但它们大多针对某一特定系统开发,如企业、学校、医院等,而且一旦设计,极难更改和扩展,这样就浪费了大量的人力和物力,因此,针对信息管理设计并开发框架就成为很有必要的事情。在下面的各章中,将以网站资源管理框架为例,谈谈其开发过程。1.2 JSP技术实现动态网站的优点JSP技术是SUN公司于1999年推出的Web开发技术,它似乎天生就是针对网络的高效、跨平台实现而服务的,因此,一经推出就受到无比的青睐。JSP技术为动态交互网页制作提供技术环境支持,它能够为程序开发人员提供实现应用程序的编制与自带组件设计网页从逻辑上分离的技术,使网站建设与开发变得较为简单与快捷。JSP有相当多的优势和传统的CGI相比较。首先,在速度上,传统的CGI程序需要使用系统的标准输入输出设备来实现动态网页的生成,而JSP是直接和服务器相关联的,而且对于CGI来说,每一个访问就需要新增加一个进程来处理,进程不断地建立和销毁对于作为Web服务器的计算机将是不小的负担。其次,JSP是专门为Web开发而设计的,其目的是为了建立基于Web的应用程序,包含了一整套的规范和工具,使用JSP技术可以很方便地将一大堆JSP页面组合成为一个Web应用程序,和ISPAI和NSAPI相比较,JSP的开发速度要快得多,开发难度也要小得多,在编译为Java Servlet以后,配合目前最新的JIT(Just In Time)的Java解释器,其执行速度也慢不了多少,而且,ISAPI和NSAPI这种和Web服务器过于紧密结合的技术在使用时一旦出现错误,很容易使Web服务器崩溃,而JSP就没有这个缺点。JSP的真正对手是ASP和PHP,在Web技术方面JSP和ASP、PHP的比较见下表。表1-1 JSP、ASP、PHP的比较JSPASPPHP运行速度快较快较快运行损耗较小较大较大难易程度容易简单简单运行平台绝大部分平台简单简单 续表1-1JSPASPPHP扩展性好一般差安全性好差好函数支持多少多数据库支持多多多厂商支持多少较多对UML的支持支持不支持支持对组件的支持支持支持不支持对分布式处理的支持支持支持不支持应用程度较广较广较广JSP的确可以在多种Web服务器和操作系统下使用,如Apache Web Server和Microsoft IIS等。Apache Web Server是世界上占有率最高的Web服务器产品,可以在包括SUN Solaris、Linux和Windows在内的许多操作系统下运行。Apache Web Server下JSP的实现可以通过免费的Apache Jserv 和GNUJSP、Jakarta-Tomcat实现,也可以使用商业的JRUN(LiveSoftware)、Weblogic(BEA)、Websphere(IBM)来实现。Microsoft IIS本身不直接支持JSP,但可以通过JRUN、Weblogic、Websphere来实现,还可以使用应用服务器添加JSP支持的Netscape Enterprise Server及由之发展而来的可以直接支持JSP的iPlanet Web Server等等。PHP本身就对各种操作系统和Web服务器做了支持,PHP目前可以作为Apache的一个附加模块直接编译进入Apache中去,由于Apache支持多种操作系统,PHP相应地也就可以在各种操作系统上实现,PHP也可以CGI方式或ISAPI方式插入到IIS或PWS中去。JSP和ASP对组件技术的支持已经很完善了,而PHP直到前不久才开始支持COM和JavaBean,但支持也不是很完善,如果PHP不能在将来完善对组件技术的支持,在大型Web应用程序方面将很难与JSP和ASP竞争,但由于PHP技术本身的易学易用,加上众多的函数支持和开放源代码的特性,在中小型Web站点的开发上,PHP还是会占有一席之地的。其实,JSP本身对于ASP和PHP并没有明显的优势,JSP的强大是因为其后面有强大的Java技术做支持,包括JavaBean和J2EE技术在内的Java技术是JSP强大生命力的所在。Microsoft的ASP技术有许多激动人心的地方,但是从企业级应用的角度看,JSP技术仍然有相当的优势。有理由认为,在将来的Web开发中,中小型站点将出现JSP、ASP和PHP三分天下的局面,但是对于大型的电子商务站点JSP技术将成为首选。第2章 开发技术与工具2.1 开发技术2.1.1 WWWWWW(World Wide Web)是一种建立在Internet上的全球性的、交互的、动态的、多平台的、分布式的图形信息系统。它的开发最初是为了在科学家之间共享成果,科学家们可以将科研成果以图文形式方便地在网上进行共享,现在WWW的应用已远远超出了原设想,成为Internet上最受欢迎的应用之一,它的出现极大地推动了Internet的推广。Web的主要特点如下:Ø Web是交互的Web的交互性首先表现在它的超链接上,用户的浏览顺序和所到站点完全由他自己决定,另外通过form的形式可以从服务器方获得动态的信息,用户通过填写form可以向服务器提交请求,服务器可以根据用户的请求返回相应信息。Ø Web是动态的一般各信息站点都尽量保证信息的时间性,所以Web站点上的信息是动态的、经常更新的,这一点是由信息的提供者保证的。Ø Web与平台无关无论你的系统平台是什么,你都可以通过Internet访问WWW,浏览WWW对你的系统平台没有什么限制,无论从Windows平台、UNIX平台、Machintosh还是别的什么平台我们都可以访问WWW。对WWW的访问是通过一种叫做浏览器的软件实现的,如Netscape 的Navigator、Mircorsofte的Explorer等。Ø Web是分布式的大量的图形、音频和视频信息会占用相当大的磁盘空间,我们甚至无法预知信息的多少。对于Web没有必要把所有信息都放在一起,信息可以放在不同的站点上,只需要在浏览器中指明这个站点就可以了。这样,使在物理上并不一定在一个站点的信息在逻辑上一体化,并且从用户来看这些信息是一体的。Ø Web是图形化的和易于导航的Web非常流行的一个很重要的原因就在于它可以在一页上同时显示色彩丰富的图形和文本,在Web之前Internet上的信息只有文本形式,Web可以提供将图形、音频、视频信息集合于一体的特性。同时,Web是非常易于导航的,只需要从一个链接跳到另一个链接,就可以在各站点各页之间进行浏览了。2.1.2 HTMLHTML(HyperText Markup Language)是Web上的“普通话”,用于生成Web页面。它是一种超文本标识语言,用来描述WWW上的超文本文件,也就是在文本文件的基础上