第一讲:WEB综述(网络数据库系统设计)_第1页
第一讲:WEB综述(网络数据库系统设计)_第2页
第一讲:WEB综述(网络数据库系统设计)_第3页
第一讲:WEB综述(网络数据库系统设计)_第4页
第一讲:WEB综述(网络数据库系统设计)_第5页
已阅读5页,还剩57页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第一讲:WEBDBS综述WEBDATABASESYSTEM,主讲老师:廉迎战副教授,参考文献:,ASP与SQL网站数据库程序设计陈峰棋科学出版社,主要内容,网络基本概念WWW与数据库公共网关接口(CGI)ASP技术JSP技术PHP技术,1.1网络基本概念-Internet,Internet概述Internet的定义IP地址和域名,网络基本概念-WWW,WWW是WorldWideWeb(万维网)的缩写,有时也称为Web。Internet(因特网)专指全球最大的、开放的、由众多网络相互连接而成的计算机网络,并通过各种协议在计算机网络中传递信息。WWW主要由三种标准成分组成,即URL(统一资源定位器)、HTTP(超文本传输协议)和HTML(超文本标记语言)。Internet在进行信息传输时,主要完成两项任务。(1)正确地将源信息文件分割成一个个数据包,并能在目的地将源信息文件的数据包再准确地重组起来。(2)将数据包准确地送往目的地。,网络协议模型,(a)ISO/OSI/RM(b)实用的协议模型(c)TCP/IP图11.1网络层次模型比较图,Internet技术与相关协议,1TCP/IP协议TCP协议(TransmissionControlProtocol,传输控制协议)规定了分割数据和重组数据所要遵循的规则和要进行的操作。TCP协议能保证数据发送的正确性,如果发现数据有损失,TCP将重新发送数据。2IP协议IP协议(InternetProtocol,网际协议)给Internet中的每一台计算机规定了一个地址,称为IP地址。IP地址的标准是由4部分组成(例如1),其中前两部分规定了当前使用网络的管理机构,第3部分规定了当前使用的网络地址,第4部分规定了当前使用的计算机地址。Internet上提供的主要服务有E-mail、FTP、BBS、Telnet、WWW等。其中WWW(WorldWideWeb,万维网)由于其丰富的信息资源而成为Internet最为重要的服务。3HTTP协议HTTP协议(HypertextTransferProtocol,超文本传输协议)应用在WWW上,其作用是完成客户端浏览器与Web服务器端之间的HTML数据传输。,Internet技术与相关协议,5UDP协议UDP协议(UserDatagramProtocol,用户数据包协议)是OSI参考模型中一种无连接的传输层协议,它主要用于不要求分组顺序到达的传输中,分组传输顺序的检查与排序由应用层完成,提供面向事务的简单不可靠信息传送服务。UDP协议基本上是IP协议与上层协议的接口。UDP协议适用端口分别运行在同一台设备上的多个应用程序。与所熟知的TCP(传输控制协议)协议一样,UDP协议直接位于IP(网际协议)协议的顶层。根据OSI(开放系统互连)参考模型,UDP和TCP都属于传输层协议。UDP协议的主要作用是将网络数据流量压缩成数据包的形式。一个典型的数据包就是一个二进制数据的传输单位。每一个数据包的前8个字节用来包含报头信息,剩余字节则用来包含具体的传输数据。,1.2Web数据库,1.2.1Web数据库的概念数据库是指按照一定的结构和规则组织起来的相关数据的集合,是存放数据的“仓库”,据此将网络数据库定义为以后台数据库为基础的,加上一定的前台程序,通过浏览器完成数据存储、查询等操作的系统。,数据库技术是计算机处理与存储数据的最有效、最成功的技术,而计算机网络的特点是资源共享,因此数据与资源共享这两种技术的结合即成为今天广泛应用的Web数据库(也叫网络数据库)。一个Web数据库就是用户利用浏览器作为输入接口,输入所需要的数据,浏览器将这些数据传送给网站,而网站再对这些数据进行处理。网站上的后台数据库就是Web数据库。,1.2Web数据库,1.2.1Web数据库的概念Web数据库的基本结构组成:数据库服务器(DatabaseServer)、中间件(MiddleWare)、Web服务器(WebServer)、浏览器(Browser)工作过程:用户通过浏览器端的操作界面以交互的方式经由Web服务器来访问数据库。用户向数据库提交的信息以及数据库返回给用户的信息都是以网页的形式显示,Web数据库的环境由硬件元素和软件元素组成。1、硬件元素:Web服务器、客户机、数据库服务器、网络。2、软件元素:客户端必须有能够解释执行HTML代码的浏览器(如IE,Netscape等);Web服务器中,必须具有能执行可以自动生成HTML代码的程序的功能,如ASP,CGI等;具有能自动完成数据操作指令的数据库系统,如Access,SQLServer等。,1.2.2几种常用Web数据库的比较,当前比较流行的Web数据库主要有:SQLServer、MySQL和Oracle、Sybase。这3种数据库适应性强,性能优异,容易使用,在国内得到了广泛的应用1SQLServer是微软公司从Sysbase获得基本部件的使用许可后开发出的一种关系型数据库。目前最新的版本是SQLServer2000,但SQLServer7.0仍在广泛使用。,由于均出自微软之手,使得SQLServer和Windows、IIS等产品有着天然的联系。事实上以Windows为核心的几乎所有微软的软件产品都采用了一致的开发策略,包括界面技术、面向对象技术、组件技术等,这样在微软的软件中很多都可以相互调用,而且配合得非常密切。因此如果用户使用的是Windows操作系统,那么IIS、SQLServer就应该是最佳的选择。,2MySQL是当今Unix或Linux类服务器上广泛使用的Web数据库系统。它于1996年诞生于瑞典的TcX公司,支持大部分的操作系统平台。MySQL的设计思想快捷、高效、实用。虽然它对ANSISQL标准的支持并不完善,但支持所有常用的内容,完全可以胜任一般Web数据库的工作。由于它不支持事务处理,MySQL的速度比一些商业数据库快23倍,并且MySQL还针对很多操作平台做了优化,完全支持多CPU系统的多线程方式。,在编程方面,MySQL也提供了C、C+、Java、Perl、Python和TCL等API接口,而且有MyODBC接口,任何可以使用ODBC接口的语言都可以使用它。更重要的是,MySQL的源代码是公开的,可以免费使用,这就使得MySQL成为许多中小型网站、个人网站追捧的明星。3Oracle是Oracle公司开发出的一种面向网络计算并支持对象关系模型的数据库产品。它是以高级结构化查询语言为基础的大型关系数据库,是目前最流行的客户/服务器体系机构的数据库之一。,目前广泛使用的版本是Oracle9i,它之所以备受用户喜爱是因为它具有以下突出的特点:(1)支持大型数据库、多用户和高性能的事务处理。Oracle支持最大数据库,其大小可达到几百千兆,可充分利用硬件设备;支持大量用户同时对数据库执行各种数据操作,并使数据征用最小,保证数据一致性;可在数据库级或子数据库级上控制数据的可用性。系统维护具有很高的性能,Oracle每天可连续24小时工作,正常的系统操作(后备或个别系统故障)不会中断数据库的应用;,(2)Oracle遵守数据库存取语言、操作系统、用户接口、和网络通讯协议的工业标准,所以它是一个开放系统,保护了用户的投资。美国标准化和技术研究所(NIST)对OracleServer进行过检验,完全与ANSI/ISOSQL89标准相兼容(3)实施安全性控制和完整性控制。Oracle为限制系统对各监控数据库存取提供可靠的安全性,并为可接受的数据指定标准,保证数据的完整性。,(4)支持分布式数据库和分布式处理。Oracle为了充分利用计算机系统和网络,允许将处理分为数据库服务器和客户应用程序处理,所有共享的数据管理由数据库管理系统的计算机处理,而运行数据库应用的工作站集中于解释和显示数据。通过网络连接环境,Oracle将存放在多台计算机上的数据组合成一个逻辑数据库,可被全部网络用户存取。分布式系统像集中式数据库一样具有透明性和数据一致性。,4Sybase数据库是Sybase公司开发出的一种面向网络计算机并支持对象关系模型的数据库产品。它是以高级结构化查询语言为基础的大型关系数据库,流行的客户/服务器体系机构的数据库之一。,表1-13种数据库的性价比,综上所述,从用户的技术水平以及国内软件应用的现状来看,SQLSever应该是一个较好的选择,尤其是对初学者而言。,1.2.3Web服务器脚本,Web页面与数据库的连接是Web数据库的基本要求。目前基于Web数据库地连接方案主要有两种类型:服务器端和客户端方案。服务器端方案实现技术有CGI、ISAP、ASP、PHP、JSP等;客户端方案实现技术有JDBC(JavaDatabaseConnectivity)、DHTML(DynamicHTML)等。结论:ASP是微软开发的脚本语言技术,它嵌入在IIS中,因此ASP也就顺理成章地成为大部分Windows用户首选的脚本语言。,1.4应用开发平台,由于Web应用开发的独特性,应用开发平台成为众多厂商的关注焦点。目前市场上存在很多的Web应用标准、集成开发环境。流行的主要是ASP、JSP、PHP、CGI、ISAPI、IDC+HTX等。(1)ASPASP(ActivexServerPages)是由微软创建的Web应用开发标准,ASP服务器已经包含在IIS服务器中,ASP服务器将Web请求转入解释器中,在解释器中将所有,ASP中的脚本进行分析,然后执行,同时可以创建COM对象以完成更多的功能,ASP中的脚本是Vbscript或Jbscript。优点:安装配置方便,开发简单易学;开发工具功能强大。缺点:ASP使用了组件因而将导致大量的安全问题;无法实现跨平台,只能应用于WindowsNT/2000。建议采用MS架构的系统采用ASP应用开发平台(IISVisualInterdev)。,(2)PHPPHP由于其良好的性能及免费的特点,是目前互联网中应用非常流行的一种应用开发平台。优点:简单易学、跨平台、有良好数据库交换能力的开发语言;与Apache及其扩展库紧密结合;良好的安全性。不足:安装配置复杂;缺少企业级的支持;作为自由软件,缺乏正规的商业支持;无法实现商品化的商业开发。建议基于Unix类平台的应用采用ApachePhpPHPEd。,(3)JSPJAVA数据库互联网接口(JDBC)是一种可以执行SQL的数据库API,它由一些JAVA语言的类、界面组成。JDBC的接口:Java.Sql.Driver.Manager:加载驱动程序Java.Sql.Connection:建立与数据库的连接Java.Sql.Statement:在一个给定的连接中作为SQL的执行容器Java.Sql.ResultSet:数据库返回数据的结果集,(3)JSPJDBC使用方法:1、在网页中用标记JAVA小程序2、在小程序中用importSQL.*来调用SQL包3、利用上述接口访问WEB数据库优点:可移植性好,支持多种平台;强大的可伸缩性;多样化与强大的工具支持。不足:安装配置管理较为复杂;运行速度较慢;建议开发大型应用系统采用JSP本书重点讲解ASP的开发技术,其它开发技术请参考有关书籍,(4)CGICGI通用网关是较早的WEB数据库访问方法。CGI使用方法:1、用WEB服务器内置语言编写CGI的程序,C、C+、PERL2、在网页中设置表单ACTION为CGI应用程序(*.EXE)优点:应用灵活、开发工具丰富、功能完善缺点:运行效率不高,(5)IDC+HTXIDC是微软的访问形式,它使用两个文件:IDC脚本文件(*.idc)和HTML文件(*.htx)。工作原理:1、若浏览器发送给WEB服务器(IIS)的字符串以IDC结尾,IIS就将其发送给IDC模块(IIS的动态连接库)2、读取脚本文件并同数据库交互,得到结果后,用模板文件(*.htx)格式化,生产一个实际的HTML文件,再由IIS发送回浏览器显示。访问需要的三个文件:1、调用IDC的HTML文件,一般用表单,将其ACTION设为IDC文件。2、IDC文件,包括:DATASOURCE与创建的ODBC数据源名称对应;TEMPLATE指定用于格式化输出结果的HTX文件,SQLSTATEMENTSQL语句。3、HTX文件,含有特殊标记的HTML文件,它用6个关键字(begindetail,enddetail,if,else,endif,%),输出IDC的查询结果。,1.5脚本程序与数据库的接口,在脚本程序中连接数据库一般都需要相应的接口来完成。连接数据库的常用方法有:ODBC、DAO、RDO及ADO等。(1)ODBC(OpenDatabaseConnectivity,即开放式数据库连接)是微软开发的一套统一的程序接口。通过这个接口可以存取不同厂商生产的数据库。,经过多年的改进,它已成为存取服务数据库的标准。事实上,ODBC技术成了后来DAO、RDO及ADO等数据库访问技术的基础。(2)DAO(DataAccessObjects,即服务器访问对象)是微软公司开发的一套主要应用程序及开发工具,用它可以访问数据库的标准对象,如Access、VB、Excel、Word等。(3)RDO(RemoteDataObjects,即远程数据库访问对象)是微软公司为增强DAO的功能而推出的新产品。,该产品强化了SQLServer的访问功能,提高了它的执行效率。(4)ADO(ActivteXDataObjects,即ActivteX数据对象)是微软在Internet领域采取的新举措。它本身并不是一项新技术,从对象结构的角度来看,它比DAO提供的对象更少;从存取SQL服务器的角度来看,它提供的功能也不如RDO。但它汲取了DAO和RDO最精华的部分,成为一个更适合于Internet的小而精的对象群。因此,ADO实际上是脚本程序连接数据库最好的选择。,1.6Web系统体系结构,1.6.1客户机/服务器结构1二层C/S结构A、组成:客户端称为前台,功能包括:用户界面、接收用户数据、处理应用逻辑、向后台发出请求、同时接收后台返回结果,最后再将结果显示给用户。服务器称为后台,功能包括:共享外部设备、存取共享数据、响应前台客户端请求并回送结果等注意:前台的应用程序和数据一般是用户专用的,而后台的数据和代码是所有用户可以共享的。B、C/S结构图,1.6Web系统体系结构,1.6.1客户机/服务器结构1二层C/S结构C、工作过程:,http请求,http响应,ODBC,客户端(Client),Web服务器端(Server),Web服务器端(Server),功能:发出请求OS:Windows98客户端软件,功能:提供服务web软件:apachepwsIISOS:windows2000,DBS:AccessSQLserverOracle数据库服务器=Web服务器,1.6Web系统体系结构,1.6.1客户机/服务器结构1二层C/S结构C、实现方式:一种是客户端来完成表示部分和应用逻辑部分,而服务器完成数据访问部分,这种情况是以客户为中心的,适用于应用相对简单、数据访问量不是很大的情况。另一种是以服务器为中心的,把一些重要的应用逻辑部分放到服务器上,这样可充分利用服务器的计算能力,减少网络上需要传送的数据。D、C/S特点C/S基于事件驱动界面和数据处理操作分开在前端和后端软件、硬件平台的无关性,1.6Web系统体系结构,1.6.1客户机/服务器结构2三层C/S结构A、组成:客户机应用服务器(应用服务器和数据库服务器可位于同一主机,也可位于不同主机)数据库服务器B、结构图客户机是应用的用户接口部分,负责用户与应用程序的交互,运行在客户机端的软件也称为表示层软件。应用服务器存放业务逻辑层(也称为功能层)软件,是应用逻辑处理的核心,实现具体业务。,1.6Web系统体系结构,1.6.2浏览器/服务器结构B/S结构后,在客户端只需安装一个通用的浏览器即可,不再受具体操作系统和硬件的制约,实现了跨平台应用。A、B/S组成:浏览器,标准配置是浏览器,如IEWeb服务器,应用处理的标准配置数据库服务器。数据处理仍然由数据库服务器处理B、B/S结构,1.6Web系统体系结构,1.6.2浏览器/服务器结构B/S结构后,在客户端只需安装一个通用的浏览器即可,不再受具体操作系统和硬件的制约,实现了跨平台应用。C、B/S工作原理通过浏览器以超文本的形式向Web服务器提出访问数据库的请求,Web服务器接受客户请求后,激活对应的CGI程序将超文本HTML语言转化为SQL语法,将这个请求交给数据库,数据库服务器得到请求后,进行数据处理,然后将处理结果集返回给CGI程序。CGI再将结果转化为HTML,并由Web服务器转发给请求方的浏览器,数据库服务器。,1.6Web系统体系结构,1.6.3多层体系结构多层的概念是由Sun公司提出来的。1多层结构优点与传统的两层结构应用软件相比,有可伸缩性好、可管理性强、安全性高、软件重用性好等诸多优点。2、多层结构体系客户层顶端Web服务层应用服务层数据库层。其中:顶端Web服务层是Sun公司多层体系结构中非常重要的一层,它主要起代理和缓存的作用。顶端Web服务器的作用是缓存本地各客户机经常使用的JavaApplet程序和静态数据,通常被放置在客户机所在的局域网内,起到一个JavaApplet主机(向Web浏览器传送JavaApplet程序的计算机)和访问其他服务的代理作用。,1.6.3、BS与C/S比较:,1.6.3、B/S的有关公司产品:,1.6.3、B/S发展的三个阶段:作业:、什么是客户机服务器概念。、什么是,简述的工作方式。,1.ASP定义ASP(ActiveServerPages)是Microsoft于1996年11月推出的Web应用程序开发技术。在Microsoft的有关文档中ASP被描述为:一个服务器端的脚本环境,可以生成和运行动态的、交互的、高性能的Web服务器应用程序。ASP既不是一种语言,也不是一种开发工具,而是为生成动态的、交互的Web应用程序提供一种方法和技术。ASP的主要特性是能够把HTML文件、脚本、基于COM标准的组件有机地组合在一起,形成一个能够在服务器上运行的动态Web应用程序,并能把按用户要求制作的标准HTML页面送给客户端浏览器。,1.7ASP概述,2.ASP发展1996年初,Denali(ASP的开发代号)发布了0.9beta版。最终的发行版ASP1.0是作为IIS3.0的组件一起发布的。与ADO技术的捆绑,是ASP成功的的最主要原因之一。程序员可以轻易地通过script脚本任意打开,存取,操作数据库。1998年,作为WindowsNT4OptoinPack的一部分,微软推出了ASP2.0,与ASP1.0的主要区别是ASP2.0支持外部组件的调用。这样,ASP应用程序可以在单独的内存空间中运行组件。MTS(MicrosoftTransactionServer)的引入将组件的运行也归入事务处理过程。2000年,Windows2000推出,包含了IIS5.0和ASP3.0。Windows2000中,微软将核心COM运行库结合了MTS,创建了COM+。使组件的使用更方便,整个运行平台更稳定,伸缩性更强,效率更高,IIS5.0在界面上的变化不大,但在底层,改为使用COM+组件服务,提供了更佳的组件运行环境,包括每个组件可以有自己单独的进程。,1.7ASP概述,3.ASP环境ASP一般来说只能运行在微软的WINDOWS环境下,运行ASP的最低配置是:IIS3.0+WindowsNTMicrosoftPeerWebServerv3.0onNTWorkstationMicrosoftPersonalWebServeronWin95Halcycon软件公司,开发了一个称为iASP(InstantASP)的ASP脚本解释引擎软件,使ASP不仅可以在采用Windows操作系统平台和服务器软件的网站上使用,还可以在采用其它操作系统如Unix、Linux、Soris、Netware操作系统及相应服务器的网站上使用。,1.7ASP概述,4.ASP开发环境与工具Microsoft公司提供了InterDev和FrontPage支持动态Web应用程序的开发。InterDev中集成了编程工具、内容编辑工具、数据库连接工具以及页面预览等功能,连同InterDev提供的向导和样本,可使开发人员在同一环境下更快地创建基于ASP的Web应用程序;FrontPage是HTML页面开发工具,可以方便地创建漂亮的HTML页面。InterDev设计Web应用程序的骨架及各种处理、控制功能,再利用FrontPage对已生成的Web应用程序进行页面上的修饰和编辑,,1.7ASP概述,5.ASP特点无需编译:ASP脚本集成于HTML当中,容易生成,无需编译或连接即可直接解释执行。易于生成:使用常规文本编辑器(如Windows下的记事本),即可进行*.ASP页面的设计。还可以使用可视化的集成编辑环境VisualInterDev。独立于浏览器:ASP脚本在服务器端解释执行,用户端只要使用可解释常规HTML码的浏览器,即可浏览ASP所设计的主页。,1.5ASP概述,5.ASP特点面向对象:在ASP脚本中可以方便地引用系统组件和ASP的内置组件,还能通过定制ActiveXServerComponent(ActiveX服务器组件)来扩充功能。与任何ActiveXscript语言兼容:除了可使用VBScript和Jscript语言进行设计外,还可通过Plug-in的方式,使用由第三方所提供的其它script语言。源程序码不会泄漏:ASP脚本在服务器上执行,传到用户浏览器的只是ASP执行结果所生成的常规HTML码,可保证编写出来的程序代码不会被盗取。另外,ASP支持多用户、多线程,可以实现各请求之间的信息共享,提高服务器的处理效率。,1.7ASP概述,6.ASP工作原理基于ASP的页面以*asp文件形式驻留在Web服务器上。一个*asp源文件是文本文件,主要包括:一、文本,用于显示信息、页面标题等;二、HTML标记,实现页面风格设计;三、ASP脚本(ScriptingCommands),一组脚本命令,在源文件中以%为定界符。脚本命令必须是缺省脚本语言(例如VBScript)中的有效命令,负责整体流程的设计,并利用ASP内置组件和内置对象、或其他组件实现所需功能。,1.7ASP概述,6.ASP工作原理当浏览器通过HTTP协议向Web服务器申请一个由*asp定义的页面时,Web服务器响应HTTP请求,用ASP引擎解释被申请文件。当遇到ASP脚本命令时,ASP引擎调用相应的脚本引擎(脚本引擎以组件的形式驻留在Web服务器上)进行处理。,1.7ASP概述,6.ASP工作原理ASP提供两种脚本引擎,即VBScript引擎和JBScript引擎,若要使用其他脚本语言,需要在Web服务器上另外安装相应的脚本引擎;当遇到基于COM标准的组件时,ASP引擎启动相应的组件完成指定的功能。若ASP文件含有访问数据库的请求,ASP内置组件ADO(ActiveXDataObject)通过ODBC与数据库连接,对数据库进行访问,并将访问结果返回Web服务器。ASP引擎将脚本和组件的运行结果生成相应的HTML语法成分,与文件中原有的文本和HTML标记一起组成标准HTML页面送至客户端浏览器。,1.7ASP概述,7.ASP的特性ASP可以包含服务器端脚本。ASP提供了几种内置对象。使用附加组件可以扩展ActiveServerPages。ASP可以与数据库(如SQLServer、MicrosoftAccess等)建立连接,通过对数据库的操作建立功能强大的Web应用程序。,1.7ASP概述,1.7ASP概述,8ASP的功能Microsoft脚本调试程序。事务性脚本。管理工

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论