网站资源管理框架的研究及其实现.docx

上传人:小飞机 文档编号:1864199 上传时间:2022-12-22 格式:DOCX 页数:42 大小:119.64KB
返回 下载 相关 举报
网站资源管理框架的研究及其实现.docx_第1页
第1页 / 共42页
网站资源管理框架的研究及其实现.docx_第2页
第2页 / 共42页
网站资源管理框架的研究及其实现.docx_第3页
第3页 / 共42页
网站资源管理框架的研究及其实现.docx_第4页
第4页 / 共42页
网站资源管理框架的研究及其实现.docx_第5页
第5页 / 共42页
点击查看更多>>
资源描述

《网站资源管理框架的研究及其实现.docx》由会员分享,可在线阅读,更多相关《网站资源管理框架的研究及其实现.docx(42页珍藏版)》请在三一办公上搜索。

1、摘 要网站资源管理框架是一个通用的、可扩展的信息管理系统(MIS),其开发主要包括前端应用程序的开发以及后台数据库的建立和维护两个方面,对于前者要求应用程序具有功能完备,易使用,可移植性好等特点,而对于后者则要求建立起数据一致性和完整性强、数据安全性好的库。为此,采用HTML标识语言、JavaScript脚本语言、JSP技术及Microsoft Access数据库技术综合开发,同时,为了便于联网应用,采取Browser/Server模式。系统的功能是实现跨平台,跨领域,跨部门的信息管理,如查询、添加、删除、修改、维护、共享等以及对多用户的管理,并且易于扩展。该软件界面比较清晰明快,主题突出,操

2、作简单,易于使用。本论文主要阐述该系统的开发思想和关键技术,包括系统的分析、系统的设计、系统的实现、系统的运行。关键字:框架;动态网站;信息管理;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章 系统实现18

3、5.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)是整个或部分系统的可重用设计,表现为一组抽象构件及构件实例间交互的方法;另一种定义认为,框架是可被应用开发者定制的

4、应用骨架。前者是从应用方面而后者是从目的方面给出的定义。框架规定了应用系统的总体结构,定义了类和对象的划分,定义了其关键责任,定义了类和对象如何合作,还定义了控制线索。框架预先定义这些设计参数,使应用系统的设计者、执行者能把力量集中在应用系统的细节上,框架收集了该应用领域的设计决策。尽管框架通常包括可以立即投入工作的具体的子类,但它更强调设计复用而不仅是代码复用,这些类为一个特定要求的软件构成一个可复用的设计。当使用框架时,复用了主体部分而编写框架所调用的代码,并必须按特定名字和调用规则来编写操作,从而减少了要做的设计决策,其结果是可以更快地完成应用系统,而且这些系统具有相似的结构,更便于维护

5、,对其使用者来说更加一致。一个框架设计者希望框架的结构可为某领域的所有应用系统工作,对框架设计的任何实质性改变都会大大降低它的益处,因为框架对应用系统的主要贡献是它定义的结构,因此,把框架设计得尽量灵活和可扩展是很必要的。此外,由于应用系统依赖于框架,所以对框架接口上的改变特别敏感,应用系统不得不随着其框架的发展而发展,这时,松散耦合更加重要,否则即使框架的一个小小的变化也会引起较大的反应。框架正逐渐通用和重要起来,它们是使面向对象系统达到最大程度复用的方法,大型面向对象应用系统将包括互操作的框架层,应用系统中的大多数设计和代码都会受到框架的影响。另一方面,信息资源对任何一个单位都至关重要。但

6、是,一直以来人们使用传统的人工的方式管理信息资源,这种管理方式存在着许多缺点,如效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。随着科学技术的不断提高,计算机科学以及网络技术日渐成熟,其强大的功能已为人们深刻认识,它已经进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机网络对信息资源进行管理,具有着手工管理所无法比拟的优点,如检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高信息资源管理的效率,也是一个单位的科学化、正规化管理,与世界接轨的重要条件。如今,各种各样的信息管理

7、软件层出不穷,但它们大多针对某一特定系统开发,如企业、学校、医院等,而且一旦设计,极难更改和扩展,这样就浪费了大量的人力和物力,因此,针对信息管理设计并开发框架就成为很有必要的事情。在下面的各章中,将以网站资源管理框架为例,谈谈其开发过程。1.2 JSP技术实现动态网站的优点JSP技术是SUN公司于1999年推出的Web开发技术,它似乎天生就是针对网络的高效、跨平台实现而服务的,因此,一经推出就受到无比的青睐。JSP技术为动态交互网页制作提供技术环境支持,它能够为程序开发人员提供实现应用程序的编制与自带组件设计网页从逻辑上分离的技术,使网站建设与开发变得较为简单与快捷。JSP有相当多的优势和传

8、统的CGI相比较。首先,在速度上,传统的CGI程序需要使用系统的标准输入输出设备来实现动态网页的生成,而JSP是直接和服务器相关联的,而且对于CGI来说,每一个访问就需要新增加一个进程来处理,进程不断地建立和销毁对于作为Web服务器的计算机将是不小的负担。其次,JSP是专门为Web开发而设计的,其目的是为了建立基于Web的应用程序,包含了一整套的规范和工具,使用JSP技术可以很方便地将一大堆JSP页面组合成为一个Web应用程序,和ISPAI和NSAPI相比较,JSP的开发速度要快得多,开发难度也要小得多,在编译为Java Servlet以后,配合目前最新的JIT(Just In Time)的J

9、ava解释器,其执行速度也慢不了多少,而且,ISAPI和NSAPI这种和Web服务器过于紧密结合的技术在使用时一旦出现错误,很容易使Web服务器崩溃,而JSP就没有这个缺点。JSP的真正对手是ASP和PHP,在Web技术方面JSP和ASP、PHP的比较见下表。表1-1 JSP、ASP、PHP的比较JSPASPPHP运行速度快较快较快运行损耗较小较大较大难易程度容易简单简单运行平台绝大部分平台简单简单 续表1-1JSPASPPHP扩展性好一般差安全性好差好函数支持多少多数据库支持多多多厂商支持多少较多对UML的支持支持不支持支持对组件的支持支持支持不支持对分布式处理的支持支持支持不支持应用程度较

10、广较广较广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,但可以通过

11、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,但支持也不是很完善

12、,如果PHP不能在将来完善对组件技术的支持,在大型Web应用程序方面将很难与JSP和ASP竞争,但由于PHP技术本身的易学易用,加上众多的函数支持和开放源代码的特性,在中小型Web站点的开发上,PHP还是会占有一席之地的。其实,JSP本身对于ASP和PHP并没有明显的优势,JSP的强大是因为其后面有强大的Java技术做支持,包括JavaBean和J2EE技术在内的Java技术是JSP强大生命力的所在。Microsoft的ASP技术有许多激动人心的地方,但是从企业级应用的角度看,JSP技术仍然有相当的优势。有理由认为,在将来的Web开发中,中小型站点将出现JSP、ASP和PHP三分天下的局面,但

13、是对于大型的电子商务站点JSP技术将成为首选。第2章 开发技术与工具2.1 开发技术2.1.1 WWWWWW(World Wide Web)是一种建立在Internet上的全球性的、交互的、动态的、多平台的、分布式的图形信息系统。它的开发最初是为了在科学家之间共享成果,科学家们可以将科研成果以图文形式方便地在网上进行共享,现在WWW的应用已远远超出了原设想,成为Internet上最受欢迎的应用之一,它的出现极大地推动了Internet的推广。Web的主要特点如下: Web是交互的Web的交互性首先表现在它的超链接上,用户的浏览顺序和所到站点完全由他自己决定,另外通过form的形式可以从服务器方

14、获得动态的信息,用户通过填写form可以向服务器提交请求,服务器可以根据用户的请求返回相应信息。 Web是动态的一般各信息站点都尽量保证信息的时间性,所以Web站点上的信息是动态的、经常更新的,这一点是由信息的提供者保证的。 Web与平台无关无论你的系统平台是什么,你都可以通过Internet访问WWW,浏览WWW对你的系统平台没有什么限制,无论从Windows平台、UNIX平台、Machintosh还是别的什么平台我们都可以访问WWW。对WWW的访问是通过一种叫做浏览器的软件实现的,如Netscape 的Navigator、Mircorsofte的Explorer等。 Web是分布式的大量的

15、图形、音频和视频信息会占用相当大的磁盘空间,我们甚至无法预知信息的多少。对于Web没有必要把所有信息都放在一起,信息可以放在不同的站点上,只需要在浏览器中指明这个站点就可以了。这样,使在物理上并不一定在一个站点的信息在逻辑上一体化,并且从用户来看这些信息是一体的。 Web是图形化的和易于导航的Web非常流行的一个很重要的原因就在于它可以在一页上同时显示色彩丰富的图形和文本,在Web之前Internet上的信息只有文本形式,Web可以提供将图形、音频、视频信息集合于一体的特性。同时,Web是非常易于导航的,只需要从一个链接跳到另一个链接,就可以在各站点各页之间进行浏览了。2.1.2 HTMLHT

16、ML(HyperText Markup Language)是Web上的“普通话”,用于生成Web页面。它是一种超文本标识语言,用来描述WWW上的超文本文件,也就是在文本文件的基础上,加上一系列的表示符号,用以描述其格式,形成网络文件。当用户使用浏览器下载文件时,就把这些标识解释成它应有的含义,并按照一定的格式将这些被标识语言标识的文件显示在屏幕上。利用HTML标识语言,可以将Internet上连接的不同地区的服务器上的信息文件链接起来:有的是去链接一个文件,有的是形成表格,有的是接受用户的信息等等。有了这些标识,用户在浏览器中看到的不再是呆板的纯文本,而是五彩缤纷的画面。此外,利用HTML语言

17、还可以将声音文件、图像文件,甚至视频文件链接起来。如果本地机器有处理声音和视频文件的功能,即所谓的多媒体功能,浏览器接收到声音和视频文件后,即可与本地机器的多媒体配置共同完成对声音和视频的处理任务,产生更加生动活泼的画面效果。此外,HTML还可以与数据库中管理的数据链接,以满足用户的查询要求及用户交互的功能等。HTML的主要优点如下: HTML语言作为一个表示型的语言,比任何一种计算机编程语言都简单,学习起来非常容易。 每一个HTML文件都不太大,能够尽可能快地通过网络传输和实现,不需要加入字体和格式等其他控制信息,这对于网络环境是相当重要的。 HTML文档是独立于平台的,对多平台兼容,因此,

18、只要有一个可以阅读和解释HTML文件的浏览器,就能够在任何平台上阅读网页文件,这一点正和Internet上多种多样的硬件种类和平台相适应。 制作一个HTML文件并不需要特殊的软件,只要一个能编辑文本文件的字符编辑器就可以了。当然,专门的HTML编辑器生成HTML文件会更加管用,常用的有Dreamweaver,Frontpage等。2.1.3 Java Java是1995年由Sun Microsystems公司提出的一种革命性的语言,与其他编程语言不同,它在短短的时间内得到了迅速的发展。由于它具有易用性、平台无关性、易移植性等诸多特征,使得它得到了广泛的应用,而且,它具有很好的发展前景,程序开发

19、费用少,工作效率高,并拥有很好的用户界面和强大的开发工具,网上数据编程体现得非常充分,是其它语言无法做到的。Java的主要优点如下: 面向对象面向对象可以说是Java最重要的特性,而且它是完全面向对象的。 分布式Java应用程序可凭借URL打开并访问网络上的对象,其访问方式与访问本地文件系统几乎完全相同。为分布环境尤其是Internet提供动态内容无疑是一项宏伟的任务,但Java的语法特性却使我们很容易实现这项目标。 稳定性Java致力于检查程序在编译和运行时的错误。类型检查帮助检查出许多开发早期出现的错误,Java自己操纵内存减少了内存出错的可能性、Java还实现了真数组,避免了覆盖数据的可

20、能,这些功能大大缩短了开发Java应用程序的周期,Java提供了Null指针检测数组边界,检测异常出口字节代码校验。 结构中立Java将它的程序编译为一种结构中立的中间文件格式,只要有Java运行系统的计算机都能执行这种中间代码。Java源程序被编译成一种高层次的与机器无关的byte-code格式语言,这种语言被设计在虚拟机上运行,由机器相关的运行调试器实现执行。 安全性Java的安全性可从两个方面得到保证,一方面,在Java语言中,指针和释放内存等功能被删除,从而避免了非法内存操作;另一方面,当Java用来创建浏览器时,语言功能和浏览器本身提供的功能结合起来,使它更安全。Java语言在机器上

21、执行前,要经过很多次测试,对于安全性有非常严格的限制,尤其是对用户端安全的保护有详尽而严格的规定,使得Internet上数据的安全不再是无法控制的问题。 可移植性同结构无关的特性使Java应用程序可以在配备了Java解释器和运行环境的任何计算机系统上运行,这成为Java应用程序便于移植的良好基础。另外,通过定义独立于平台的基本数据类型及其运算,Java数据得以在任何硬件平台上保持一致。 动态特性:Java的动态特性是其面向对象设计方法的扩展。它允许程序动态地装入运行过程中所需要的类,而不会使任何引用该类的程序崩溃。Java还简化了使用一个升级的或全新的协议的方法,如果系统运行Java程序时遇到

22、了不知如何处理的问题,Java能自动下载所需的功能程序。2.1.4 JavaScriptJavaScript最早为Netscape所设计,可以直接由HTML网页文件引用,但它的事件处理能力比单独的HTML提供的用户接口更强,控制更方便。JavaScript是个脚本编程语言,支持Web应用程序的客户机和服务器方构件的开发。在客户机中,它可用于编写Web浏览器在Web网页上下文中执行的程序,在服务器中,它可用于编写用于处理Web浏览器提交的信息并相应地更新浏览器显示的Web服务器程序。HTML为我们提供了超级链接,使互联网的存在、发展成了可能,但这种技术提供的只是一种静态的信息资源。JavaScr

23、ipt是一种基于对象和事件驱动的,具有较好安全性的一种脚本语言,它的出现很好的解决了上述问题,它使信息与用户之间不再只是一种显示与浏览的关系,而是比较有效地实现了实时、动态和交互功能。JavaScript的主要优点如下: 在JavaScript出现之前,传统的数据提交和验证工作均由用户端浏览器通过网络传输到服务器上进行,如果数据量很大,这对于网络和服务器的资源来说实在是一种无形的浪费,而使用JavaScript就可以在客户端进行数据验证。 JavaScript可以方便地操纵各种浏览器的对象,可以使用JavaScript来控制浏览器的外观,状态甚至运行方式,可以根据用户的需要“定制”浏览器,从而

24、使网页更加友好。 JavaScript不允许访问本地硬盘,不能将数据存入服务器,不允许修改网络上的文档,安全性高。 JavaScript的运行只依赖于浏览器本身,所以只要浏览器运行就一定能运行JavaScript语句,而与操作系统无关。2.1.5 JavaBeanJavaBean是描述Java的软件组件模型,在Java模型中,通过JavaBean可以无限扩充Java程序的功能,通过JavaBean的组合可以快速的生成新的应用程序。对于程序员来说,最好的一点就是JavaBean可以实现代码的重复利用,另外对于程序的易维护性等也具有很重大的意义。JSP对在Web应用中集成JavaBean组件提供了

25、完善的支持,这种支持不仅能缩短开发时间,也为JSP的应用带来了更多的可伸缩性。JavaBean组件可以用来执行复杂的计算任务,或负责与数据库的交互以及数据提取等,由于JavaBean开发起来简单,又可以利用Java语言的强大功能,许多动态页面处理过程实际上被封装到了JavaBean中。2.1.6 JDBCJDBC是用于执行SQL语句的Java应用程序接口,由一组用Java语言编写的类与接口组成,在JSP中将使用JDBC来访问数据库。JDBC是一种规范,它让各数据库厂商为Java程序员提供标准的数据库访问类和接口,这样就使得独立于DBMS的Java应用程序的开发工具和产品成为可能。一般的Java

26、开发工具都带有JDBCODBC桥驱动程序,这样,只要是能够使用ODBC访问的数据库系统,也就能够使用JDBC访问了。有趣的是,不同于ODBC是Open Database Connectivity的简称,JDBC并不是Java Database Connecivity的简称,而是SUN的注册商标,至少官方说法是这样的。2.1.7 Java ServletJava Servlet是JSP技术的基础,而且大型的Web应用程序的开发需要Java Servlet和JSP配合才能完成。Servlet这个名称大概源于Applet,可以称之为“小服务程序”。Servlet其实和传统的CGI程序以及ISAPI、

27、NSAPI等Web程序开发工具的作用是相同的,在使用Java Servlet以后,用户不必再使用效率低下的CGI方式,也不必使用只能在某个固定Web服务器平台运行的API方式来动态生成Web页面。许多Web服务器都支持Servlet,即使不直接支持Servlet的Web服务器也可以通过附加的应用服务器和模块来支持Servlet。得益于Java的跨平台的特性,Servlet也是平台无关的,实际上,只要符合Java Servlet规范,Servlet是完全平台无关且是与Web服务器无关的。由于Java Servlet内部是以线程方式提供服务,不必对于每个请求都启动一个进程,并且利用多线程机制可以同

28、时为多个请求服务,因此Java Servlet效率非常高。但Java Servlet也不是没有缺点,和传统的CGI、ISAPI、NSAPI方式相同,Java Servlet是利用输出HTML语句来实现动态网页的,如果用Java Servlet来开发整个网站,动态部分和静态页面的整合过程简直就是一场恶梦。这就是为什么SUN还要推出Java Server Pages的原因。2.2 开发工具2.2.1 JBuilderBorland JBuilder是全球第一的跨平台Java开发环境,以建构符合业界标准的Java应用系统。运用JBuilder双向、可视化的设计工具,JBuilder可加快您开发EJB

29、、Web客户端、XML、Web Services以及数据库应用程序,并且可以快速分发应用程序到多种业界居领先地位的J2EE 平台应用程序服务器。JBuilder 强化了团队开发效率,允许Java开发团队能够更快速、更可靠的开发Java应用程序。JBuilder允许您自由选择您的开发平台、版本控制系统以及应用程序服务器,让您免于被特定的厂商所束缚。JBuilder的开发者可以从广泛的开发者社区中获得诸多好处,因为开发者可以定制并且扩充JBuilder的开发环境。JBuilder的开发环境是Borland对于Java软件平台的支持核心。Borland的解决方案允许开发团队能够更有生产力、降低开发成

30、本、发展一致并且高质量的应用程序,并且能够快速推向市场。在JBuilder的IDE中,开发者从设计到开发的阶段,都可以完整的掌握整个应用程序的开发生命周期。JBuilder的开发环境提供了从开发、调试、测试、编译到分发布署等功能,包含了应用程序所有阶段的开发生命周期。不管是新手或是富有经验的开发者,JBuilder都能以省时好用的工具大幅增加生产力,并且加速推向市场的时间。JBuilder提供了灵活、开放的解决方案以开发Java应用程序,包括了EJB,JSP,servlet,Web Services以及其它各种应用程序。JBuilder也提供了支持Window,Linux和Solaris的开发

31、,以提供真正的跨平台支持能力。JBuilder可快速地由程序代码自动产生UML模型,透过UML类图(class diagram)将您的程序代码以可视化方式展现,无论是校验,分析程序代码,或是开发团队间沟通设计信息,都变得更得非常容易。并且能够了解系统中未知程序代码的架构。仅需在UML类图上以鼠标点选,即可检查具有联系或相依关系的程序代码。无论您在UML类图变更类别名称、方法名称、属性名称或是包名称,JBuilder重构功能会重建相关程序代码,节省您的时间。自动地移动类和包。使用新的程序代码格式器在开发团队中维持一致的程序代码格式。指定格式化的个人喜好,例如缩排、大小、括号、空格、事件处理函数、

32、输入程序代码叙述次序以及更多的功能,JBuilder都会自动重排原始程序代码。程序代码重整功能无论对于新的程序代码或是现有的程序代码都可以使用,重排个人喜好也可以导入或是导出。JBuilder内建具备数据感知(data-aware)能力的dbSwing组件,包含了树状结构、清单、表格等多个进阶功能组件,协助您更容易地建构Java 数据库应用程序,数据库dbSwing组件直接支持Swing的数据模型。JBuilder搭配最新EJB技术,帮助你快速建构数据导向动态Web应用程序,让您更容易地将企业逻辑与Web应用程序相结合。JBuilder允许您在XML和数据库档案之间轻易的转移数据。JBuild

33、er内建完全以Java撰写的关连式数据库JDataStore。2.2.2 AccessAccess是一个数据库管理系统,与其它的数据库管理系统相比更加简单易学,一个普通的计算机用户即可掌握并使用它,而且最重要的一点是,Access的功能足够强大,足以应付一般的数据管理及处理需要。Access将所有有名字的东西都成为对象(object),最重要的对象包括: 表(Table)表是数据库的基本对象,用来存贮数据库的数据。 查询(Query)查询可以按索引快速查找到需要的记录,按要求筛选记录并能连接若干个表的字段组成新表。 窗体(Form)窗体提供了一种方便的浏览、输入及更改数据的窗口,还可以创建子窗

34、体显示相关联的表的内容。窗体也称表单。 报表(Report)报表的功能是将数据库中的数据分类汇总,然后打印出来,以便分析。 宏(Macro)宏相当于DOS中的批处理,用来自动执行一系列操作。 模块(Module)模块的功能与宏类似,但它定义的操作比宏更精细和复杂,用户可以根据自己的需要编写程序。Access是关系数据库开发工具,数据库能汇集各种信息以供查询、存储和检索。Access的优点在于它能使用数据表示图或自定义窗体收集信息。数据表示图提供了一种类似于Excel的电子表格,可以使数据库一目了然。另外,Access允许创建自定义报表用于打印或输出数据库中的信息。Access也提供了数据存储库

35、,可以使用桌面数据库文件把数据库文件置于网络文件服务器,与其他网络用户共享数据库。如上所述,Access作为关系数据库开发具备了许多优点,可以在一个数据包中同时拥有桌面数据库的便利和关系数据库的强大功能。2.3 Browser/Server模式目前网络版软件中似乎存在着两种不同的趋势,一种是称为客户端服务器的Client/Server结构,这类软件具有结构严谨,运行效率高,服务器端压力小,安全性好等优点,具有强壮的数据操纵和事务处理能力,以及数据的安全性和完整性约束,被广泛运用于局域网中。它的结构如图2.1。Graph ClientSocketGraph Server数据仓存取接口DBS 图2

36、.1 Client/Server结构这种结构存在以下不足: 要开发服务器程序,从而延长了开发时间。 每一客户都必须拷贝客户端应用程序副本,使客户端变得越来越臃肿,无论安装还是升级均需在成百上千的计算机中实施。 需要对不同的平台开发客户端应用程序,其移植性差,界面不统一,需大量的用户培训成本。基于以上的缺点,使Client/Server的开发及管理成本越来越高,加上Internet的广泛使用,于是提出Browser/Server信息发布模式。 Browser/Server模式不需要在客户端保留应用程序副本,一般仅安装在服务器中,利用Web浏览器作为客户端可以使用一套客户程序,从而大大减少开发工作

37、量,同时Web浏览器可以使不同系统的界面具有一种公共的显示格式,大大降低用户的训练费用,并有利于用户跨系统使用,它的结构如图2.2。BrowserHTTPWWW Server 数据仓存取接口 DBSResultExec调用 CGI图2.2 Browser/Server 结构第3章 系统分析3.1 可行性研究可行性研究的目的是用最小的代价在尽可能短的时间内确定问题是否能够解决。 技术可行性通过第2章的分析,各种开发技术已发展成熟,各种开发软件在国内外大量的使用,故软件开发平台成熟可行。 经济可行性目前,在各个单位,计算机已经开始普及,而本系统在使用时只需一台性能较高的服务器即可,故经济方面也可行

38、。 操作可行性本系统界面清晰明快,主题突出,只要稍加熟悉即可胜任,故操作方面也可行。3.2需求分析需求分析的任务是确定系统必须完成哪些工作,也就是对目标系统提出完整、准确、清晰、具体的要求。本软件作为一个信息资源管理框架,尽管各个单位的内部管理千差万别,但都应包括以下一些主要功能: 用户的管理在一个单位内部,有多个部门,如果共用一个用户帐号,显然是不合理的,为此,应建立多个用户,在系统中,应该有一个管理员,它具有最高权限,能执行所有操作,包括查询信息,更新信息,共享信息,管理用户,而普通用户的某些操作是受限制的。 信息的查询在当今时代,信息已成为一个单位的重要资源,因此,迅速而准确地查询信息是

39、衡量一个信息管理系统好坏的重要标准。 信息的更新信息是动态的,而不是一成不变的,一个好的软件应该能够让用户方便而快捷的添加、删除、修改信息。 信息的共享在单位中,各部门之间的信息不是孤立的,而是彼此联系的,其中,有许多信息需要共享。共享可节省大量的人力和物力,也易于扩充和维护。 日志功能为了便于管理和维护,应该记录用户的操作,建立日志文件,这对整个系统的安全也是非常有益的。1.1接 收信 息1.2更 新数据库1.3处 理信 息2显 示信 息用户户用户户D2 日志数据库D3 显示数据库D1 用户数据库3.3 数据流图图3.1 数据流图第4章 系统设计4.1 界面设计界面设计要求界面清晰,美观,易

40、于用户操作。本程序主界面如图4.1如示,左边的是显示窗口,它的主要结构是一棵资源管理树,结点分成三类:根结点、文件夹结点、叶子结点,每个结点由图标和显示文本组成,也可以加上超链接,所有结点是分层显示的,并且具有继承关系。显示窗口上方的图标完成相应的操作内容,包括添加、删除、修改、查询、共享和用户管理。右边的是操作窗口,各个操作都是在其中进行的。图4.1 程序主界面4.2 数据库设计在用户登录时要利用数据表来储存用户的名称和密码,用户的各种操作也是围绕着数据库中的内容来进行的,所以数据库和相关的数据表的设计是很重要的,数据表中的内容设置是否合理,将直接影响到以后系统的执行效率。在本系统中,首先要

41、有一个用户表User,它包括User_name和User_password两个字段,分别存储用户的名称和密码,初始化时,表中只有管理员名称和密码。表4.1 用户表User字 段 名类 型长 度意 义User_nameText20用户的名称User_passwordText20用户的密码为了显示用户的资源管理树,必须为每个用户建立一个表Tree,每当用户登陆或执行操作后,程序都从其中选取数据加以显示。表4.2 树形结构表Tree字 段 名类 型长 度意 义IconText40显示的图标ContentText20显示的文本HtmlText40超链接ParentText20结点的双亲LeafText

42、4是否为叶子OwnerText20结点的所有者为了便于管理和维护,以及对用户的操作加以追踪,还应建立一个日志表Log,其中存放用户何时执行了何种操作。表4.3 日志表Log字 段 名类 型长 度意 义UserText20执行操作的用户OperationText20执行操作的名称ObjectText20操作对象DateText20操作时间此外,还有一些数据表要在程序运行时动态地创建和销毁,如需为每个新建的文件夹结点建立三个表:_child、_index、_owner,分别存放该文件夹结点的叶子结点、属性以及共享此非终端结点的用户,这将在后面的系统实现中具体介绍。4.3 模块设计模块化就是把程序划

43、分成若干个模块,每个模块完成一个子功能,把这些模块合起来组成一个整体,可以完成指定的功能,满足问题的要求。采用模块化原理可以使软件结构清晰,不仅容易设计也容易阅读和理解。因为程序错误通常局限在有关的模块及它们之间的接口中,所以模块化使软件容易调试和测试,因而有助于提高软件的可靠性。因为变动往往只涉及少数几个模块,所以模块化能提高软件的可修改性。采用模块化应尽量做到模块独立,即希望设计这样的结构,使得每个模块完成一个相对独立的特定子功能,并且和其它模块之间的关系尽量简单。模块独立是好设计的关键,而设计又是决定软件质量的关键环节。人们在开发计算机软件的长期实践中积累了丰富的经验,总结这些经验得出了

44、一些启发式规则,主要包括以下几个方面: 改进软件结构提高模块独立性。 模块规模应该适中。 深度,宽度,扇出和扇入都应适当。 模块的作用域应该在控制域之内。 力争降低模块接口的复杂程度。 设计单入口单出口的模块。 模块功能应该可以预测。图4.2 模块图用户添加信息管理用户登陆用户管理信息查询密码更改用户查询用户删除信息修改信息删除信息添加信息显示信息共享主 程 序 对于本系统,可根据需求分析将结构分成用户登陆模块、信息显示模块、信息管理模块、用户管理模块这四大模块,其中信息管理模块又可分为信息添加模块、信息删除模块、信息修改模块、信息查询模块、信息共享模块,用户管理模块则分为用户添加模块、用户删

45、除模块、用户查询模块、密码更改模块,至于日志功能则可以在各个模块中分别实现,具体的模块图如下。4.4 网页设计网页设计的任务是设计出系统的“蓝图”,以后将根据这个蓝图编写程序,它的结果基本上决定了最终的系统的质量,具体的网页功能如下表。表4.4 网页功能表网 页 名 称网 页 功 能Login.jsp用 户 登 陆Main.jsp程 序 主 窗 口Tree.jsp显 示 窗 口Operation.jsp操 作 窗 口AddRoot.jsp添 加 根 结 点AddFile.jsp添 加 非 终 端 结 点AddItem.jsp添 加 终 端 结 点DeleteFile.jsp删 除 非 终 端

46、结 点DeleteItem.jsp删 除 终 端 结 点UpdateItem.jsp修 改 终 端 结 点QueryFile.jsp查 询 非 终 端 结 点ShareFile.jsp共 享 结 点DeleteUpdatePassword.jsp用 户 更 改 密 码AddUser.jsp管 理 员 添 加 用 户DeleteUser.jsp管 理 员 删 除 用 户QueryUser.jsp管 理 员 查 询 用 户第5章 系统实现为了更好地介绍系统实现,在各个模块中选取了部分源代码。其中,许多公共部分,如窗体的创建、变量的声明、客户端的数据检查、加载数据库以及建立日志文件将只在5.1节中详细说明,其它各个模块基本上都与此相同,不再累述。同时,由于信息管理模块比较复

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号