湖州师范学院学位论文 第一章 绪论
2、由于ASP没有提供任何输出数据为内容的元件,所以在使用ASP撰写数据库页面时只能借助ADO的RecordSet对象逐笔读取记录,而ASP.NET通过ADO.NET提供的DataGrid等数据库元件可以直接和数据库联系。
3、ASP.NET支持应用程序的实时更新。管理员不必关掉网络服务器或者甚至不用停止应用程序的运行就可以更新应用文件。应用程序文件永远不会被加锁,因此甚至在程序运行时文件就可以被覆盖。当文件更新后,系统会温和地转换到新的版本。
4、ASP.NET采取\方式编写代码使得代码更易于编写,结构更清晰,降低了系统的开发与维护的复杂度和费用。
所以本系统将采用基于ASP.NET的C#语言进行开发。
1.3.4 系统运行软件平台
1、服务器端:
操作系统: Window 2000 (或更高)、Microsoft .NET Framework v1.1、asp.net 1.0、SQL Server 2000(或更高)。 2、客户端:
浏览器:Netscape7.0,Opera7,Internet Explorer 6.0 sp1以及其它支持xhtml 1.0标准的移动设备。
1.4 全文体系
第一章简述了系统的开发背景、发展现状及目的,介绍.Net和SQL Sverver的相关技术。 第二章介绍了基于Web的数据库技术的发展情况,并详细介绍了浏览器用及务器模式的工作方式及特点,同时详细还介绍了实现Web数据库的不同方法及ASP.net技术在性能方面的优越性。
第三章讨论了运用软件工程的思想,做毕业设计管理的系统功能需求、以及整个系统的设计与分析。
第四章主要介绍毕业设计管理系统的功能结构和具体实现,以及所采取的安全控制技术。
第五章是结束语。总结了全文的主要思想,分析了今后继续努力的方向。
国际互联网技术日新月异,极大地推动了基于Internet的应用技术的发展。支持Web数据库访问的新技术也层出不穷。随着校园网的发展,基于Internet的各种教学管理系统、学生管理系统也在不断地深入和发展。本文所介绍的“基于Web的毕业设计管理系统的设计与实现”仅仅是高校管理信息系统的一个小模块,今后我们将进一步努力,不断地学习新知识,争取将这个系统做到更加完善。
- 3 -
湖州师范学院学位论文 第二章 基于Web的数据库技术分析
第二章 基于Web的数据库技术分析
当计算机的应用开始从数值计算向数据库方面发展的时候,许多公司和机构都致力于建立一种完美的数据库运行的体系结构。网络的出现给计算机带来一次重大的改革,为了适应网络环境下的数据库应用,人们依据计算机的应用特点和应用功能的划分方式,提出了一系列应用框架—主机/终端模式、客户机/服务器模式以及随后的浏览器/服务器模式。在构造一个应用系统时,我们首先要考虑的是系统的体系结构,采用哪种结构取决于系统的网络环境、应用需求等因素。
2.1 数据库应用系统的层次体系 2.1.1 终端/主机体系结构
这是一种早期处理数据所采用的模式,如图2-1所示。这种体系结构使得用户能够尽可能地使用共享资源,终端所要做的事只是输入命令,显示结果,而有关的一切数据处理都交给了主机去完成。在这样的结构中,由于终端不需要做什么处理工作,所以它可以很简单,也不必随着信息业的发展频繁更新,因此也称“哑”终端,但主机就不一样了,它几乎包揽了有关数据的一切处理工作,这就要求它具有十分高的性能,并且能够随着信息量的增加不断更新。[16]
这种模式中,服务器存储所有数据,进行所有处理运算,资源也得到了充分的共享。但是用户界面不友好,主机负载过大。
2.1.2 客户机/服务器体系结构[16、17]
传统的C/S结构是两层的,基本思想是:服务器提供数据的存取和管理等,客户端运行相应的应用,通过网络获得服务器的服务,使用服务器上的数据库资源。与主机/终端模式相比,C/S结构更容易扩充,更加灵活。当信息系统的规模扩大或需求改变时,不必重新设计便可在原有基础上进行扩充和调整,从而保护了己有投资。为了应用客户机/服务器这种体
- 4 -
湖州师范学院学位论文 第二章 基于Web的数据库技术分析
系结构,原来完全放在主机上的应用程序被分成了两部分:客户机端的应用程序和服务器端的应用程序,如图2.2所示。
由于两层结构的C/S系统本身固有的缺陷,使得它不能应用于一些大型的、结构复杂的系统中,由此出现了三层结构的C/S系统,它把两层结构中服务器部分和客户端部分的应用单独划分出来,从而满足了大型应用系统的需求。
典型的数据库应用可分成三部分:即表示部分、应用逻辑部分和数据访问部分。由此,三层C/S结构将应用的三部分明确地进行分割,使其在逻辑上各自独立,并且单独加以实现,分别称之为客户服务器、应用服务器和数据库服务器。与两层C/S结构相比,其应用逻辑部分被明确地划分出来。在硬件实现上,有两种方式:
1、客户位于客户机上,应用服务器和数据库服务器位于同一主机上。这种方式在主机具有良好性能的前提下,能保证应用服务器和数据库服务器之间的通信效率,减少客户和应用服务器之间网络上的数据传输,使系统具有好的性能。如图2.3所示。
2、客户位于客户机上,应用服务器和数据库服务器位于不同主机上。这种方式更加灵活,能够适应客户机数目的增加和应用处理负荷的变动。在增加新的应用逻辑时,可以追加新的应用服务器。系统规模越大,这种方式的优点体现得越明显。如图2.4所示。
- 5 -
湖州师范学院学位论文 第二章 基于Web的数据库技术分析
两种方式在复杂应用下,使整个系统达到高性能的关键是应用服务器和数据库服务器间的数据通信效率,它对于应用服务器和数据库服务器位于不同主机上的第二种方式来说尤为重要。
三层C/S模式的功能:
1、客户:是应用的用户接口部分,负责用户与应用程序的交互。它接受用户的输入请 求,将结果以适当的形式返回用户,常以图形用户界面(GUI)表现出来。客户的GUI界面应当易于生成和修改,并尽量与其他两层保持独立,以适应应用的变化。
2、应用服务器:是应用逻辑处理的核心,是具体业务的实现。它与客户间的数据交往应尽量简洁,客户将请求信息发送给应用服务器,应用服务器返回数据和结果。
应用服务器一般和数据库服务器有密切交往,应用服务器向数据库服务器发送SQL请求,数据库服务器将数据访问结果返回给应用服务器。此外,应用服务器也可能和数据库服务器没有交换,而作为客户的独立服务器使用。应用逻辑变得复杂或增加新的应用时,可增加新的应用服务器,它可与原应用服务器驻留于同一主机或是不同主机上。
3、数据库服务器:以传统的基于SQL的DBMS实现,它接收应用服务器提出的SQL请求,完成数据的存储、访问和完整性约束等。
2.1.3 浏览器/服务器结构[15、17、18]
在典型的客户机服务器体系中,那种为客户安装前端应用程序的方法已不再现实,甚至限制客户端的工作环境只能基于Windows、Macintosh或UNIX等亦不切实际。人们不能开发那种只能用于特定计算环境的软件,且在自己的WEB站点上同时保存某个应用程序的多个特定平台的版本是不可行的,因为这样不但使软件开发成本大幅度上涨,而且客户端的计算环境可能是干变万化的,无法预知客户端的计算环境什么时候已经或将要作何种改变。不过可以要求在客户机上安装某种具有一定“翻译”功能的统一的构件,这个构件便是浏览器。它作为操作系统的一种扩展,充当的是用户计算机与Internet之间的一个接口,随着浏览器功能的不断增强,它有望成为将来大部分应用程序运行的主要环境外壳。
于是基于浏览器/服务器模式的系统应运而生,它继承了客户机/服务器模式的所有优点而克服了它的缺点。浏览器/服务器模式不受具体操作系统和硬件的制约,可以很容易地构筑大型实用的网络,不需要一个统一客户机和服务器的操作系统。防止了“胖客户机”现象的产生,非常容易实现不同网络间的连接[15]。
浏览器/服务器的工作原理和过程:
在浏览器/服务器模式中,客户端的标准配置是浏览器,如,IE:业务功能处理从C/S代码中彻底分离出来,由独立的应用服务器处理,WEB服务器成为应用处理的标准配置:数据处理仍然由数据库服务器〔DB Server)完成。图2.5为浏览器/服务器模式构成及数据处理方式。浏览器/服务器模式是三层分布结构,即浏览器—Web服务器—数据库服务器。
- 6 -
湖州师范学院学位论文 第二章 基于Web的数据库技术分析
一般情况下的工作流程为: 1、用户输入所要启动的主页URL(统一资源定位),浏览器将生成一个HTTP请求并把它发送到指定的web服务器。
2、服务器把主页发回给浏览器,浏览器将其显示在屏幕上。
3、用户阅读相关信息,可继续查找有关信息,向浏览器发出请求。
4、浏览器发送一个请求给相应的服务器,并把由URL标识的文档/文件返回屏幕。 5、服务器收到请求后,查看本站点是否有该文档:若有,则把该文档放入响应信息中返回浏览器。
6、浏览器收到响应,查看头文件格式,判断是否能直接显示。若能就显示出来,否则,调用对应的帮助应用程序或外挂程序处理。
7、浏览器等待用户的下一条指令,而服务器准备接受来自浏览器的下一条请求。 2.1.4 C/S结构与B/S结构的比较
与C/S相比,B/S在许多方面体现了很大的优势,主要体现在以下几个方面:
1、开发和维护成本
C/S开发和维护成本较高,对不同的客户端要开发不同程序,编程工作量大,对于B/S,只需在客户端安装通用的浏览器,所有的维护和升级工作都是在服务器上执行的,不需对客户端进行任何改变,故而大大降低了开发和维护成本。
2、客户端任务
C/S的客户端具有显示和处理数据的功能,任务过重,B/S的客户端把事务逻辑部分分给了服务器,不再负责处理复杂计算和数据访问等关键事务,只负责显示部分,任务大大减轻。
3、采用的标准
C/S所采用的标准只在内部统一,其应用通常是专用的。B/S所采用的标准是开放的、非专用的,保证了其应用的通用性和跨平台性。
4、灵活性
C/S系统模块中每一部分的变动均要影响到其它模块的变动,系统升级困难,灵活性差。B/S各层之间相互独立,任何一层的改变不影响其它层的功能,系统改进非常容易,灵活性好。
5、安全性
C/S系统中的客户机直接与服务器相连,非法用户可以很容易地通过应用程序侵入系统,并对服务器数据库进行操作,这给系统的安全性带来极大的隐患。B/S系统在客户机和服务器之间增加了一层Web服务器,是两者不在相连,客户机无法直接对数据库操作,可
- 7 -