Web数据库系统(全文)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Web数据库系统(全文)
胡经国
本文作者的话
本文是根据有关文献和资料编写的《漫话云计算》系列文稿之一。以此作为云计算学习笔录,供云计算业外读者进一步学习和研究参考。希望能够得到大家的指教和喜欢!
下面是正文
一、Web数据库系统概述
Web数据库系统,是指在互联网中以Web查询接口方式访问的数据库系统资源。
Web技术是促进Internet发展的因素之一。由静态网页技术的HTML到动态网页技术的CGI、ASP、PHP、JSP等,Web技术经历了一个重要的变革过程。Web已经不再局限于仅仅由静态网页提供信息服务,而改变为动态网页,可提供交互式的信息查询服务,使信息数据库服务成为了可能。
Web数据库就是将数据库技术与Web技术融合在一起,使数据库系统成为Web的重要有机组成部分,从而实现数据库与网络技术的无缝结合。这一结合不仅把Web与数据库的所有优势集合在一起,而且充分利用了大量已有数据库的信息资源。
Web数据库系统,由数据库服务器(Database Server)、中间件(Middle Ware)、Web服务器(Web Server)、浏览器(Browser)4部分组成。
其中,数据库服务器,由运行在局域网中的一台或多台计算机和数据库管理系统软件共同构成。数据库服务器为客户应用提供服务,这些服务是:查询、更新、事务管理、索引、高速缓存、查询优化、安全及多用户存取控制等。
中间件(Middleware)是提供系统软件和应用软件之间连接的软件,以便于软件各部件之间的沟通。数据库访问中间件(Database Access Middleware)支持用户访问各种操作系统或应用程序中的数据库。SQL是该类中间件的其中的一种。
Web数据库系统的工作过程,可简单地描述成:用户通过浏览器端的操作界面以交互的方式经由Web服务器来访问数据库。用户向数据库提交的信息以及数据库返回给用户的信息,都是以网页的形式显示的。
链接:CGI
CGI(Common Gateway Interface,公共网关接口),是Web技术中最重要的技术之一,有着不可替代的重要地位。CGI是外部应用程序(CGI程序)与Web服务器之间的接口标准,是在CGI程序和Web服务器之间传递信息的规程。CGI规范允许Web服务器执行外部程序,并将它们的输出发送给Web浏览器。CGI将Web的一组简单的静态超媒体文档变成一个完整的新的交互式媒体。
CGI在物理上是一段程序,运行在服务器上,提供同客户端HTML页面的接口。这样说大概还不好理解。那么,我们看一个实际例子。现在的个人主页上大部分都有一个留言本。留言本的工作是这样的:先由用户在客户端输入一些信息,如名字之类的东西。接着用户按一下“留言”(到目前为止工作都在客户端);浏览器把这些信息传送到服务器的CGI目录下特定的CGI程序中;于是CGI程序在服务器上按照预定的方法进行处理。在本例中,就是把用户提交的信息存入指定的文件中。然后CGI程序给客户端发送一个信息,表示请求的任务已经结束。此时,用户在浏览器里将看到“留言结束”的字样。整个过程结束。
绝大多数的CGI程序被用来解释处理来自表单的输入信息,并在服务器产生相应的处理,或将相应的信息反馈给浏览器。CGI程序使网页具有交互功能。
总之,CGI程序的处理步骤是:
①、通过Internet把用户请求送到Web服务器;
②、Web服务器接收用户请求并交给CGI程序处理;
③、CGI程序把处理结果传送给Web服务器;
④、Web服务器把结果送回到用户。
链接:ASP
ASP(Active Server Page,动态服务器页面),是微软公司开发的代替CGI 脚本程序的一种应用。它可以与数据库和其它程序进行交互,是一种简单、方便的编程工具。ASP的网页文件的格式是.asp。现在常用于各种动态网站中。
链接:PHP
PHP是(Hypertext Preprocessor,超文本预处理器)嵌套缩写,是超级文本预处理语言,一种HTML内嵌式语言。PHP与微软的ASP颇有几分相似,都是一种在服务器端执行的嵌入HTML文档的脚本语言。其语言的风格类似于C 语言。它可以比CGI或者Perl更快速地执行动态网页。现在被很多的网站编程人员广泛运用。
链接:JSP
JSP(Java Server Pages,Java服务器页面),其根本是一个简化的Servlet 设计,它是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态
网页技术标准。JSP技术有点类似ASP技术,它是在传统的网页HTML(标准通用标记语言的子集)文件(*.htm,*.html)中插入Java程序段(Scriptlet,即小脚本)和JSP标记(tag),从而形成JSP文件,后缀名为(*.jsp)。用JSP 开发的Web应用是跨平台的,既能在Linux下运行,也能在其他操作系统上运行。
链接:Perl
Perl(Practical Extraction and Report Language,实用报表提取语言),是一种功能丰富的计算机程序语言,运行在超过100种计算机平台上;适用广泛,从大型机到便携设备,从快速原型创建到大规模可扩展开发。
链接:Servlet
Servlet,全称Java Servlet,是用Java语言编写的服务器端程序。其主要功能在于交互式地浏览和修改数据,生成动态Web内容。狭义的Servlet,是指Java语言实现的一个接口;广义的Servlet,是指任何实现了这个Servlet接口的类,一般情况下,人们将Servlet理解为后者。
Servlet运行于支持Java的应用服务器中。从实现上讲,Servlet可以响应任何类型的请求,但绝大多数情况下Servlet只用来扩展基于HTTP协议的Web 服务器。
二、Web服务器工作原理与工作步骤
万维网简称为Web。Web可以描述为在Internet上运行的、全球的、交互的、动态的、跨平台的、分布式的、图形化的超文本信息系统。
链接:跨平台
跨平台,泛指程序语言、软件或硬件设备可以在多种操作系统或不同硬件架构的电脑上运作。
广义而言,一般的计算语言都可做到跨平台,开发商只需要提供各种平台下的Runtime/中间件环境即可。严格而言,是指用某种计算机语言编制的程序只需要做小量的修改,编译之后即可在另外一种平台下运行,此时并不提供Runtime/中间件环境。例如Java语言是一种提供Runtime环境的跨平台解决方案,而C语言是一种标准且严格的跨平台语言。
Runtime(运行时刻),是指一个程序在运行(或者在被执行)的状态。也就是说,当你打开一个程序使它在电脑上运行的时候,那个程序就是处于运行时刻。在一些编程语言中,把某些可以重用的程序或者实例打包或者重建成为“运行库”。这些实例可以在它们运行的时候被链接或者被任何程序调用。
中间件(Middleware)是一种独立的系统软件或服务程序;分布式应用软件借助这种软件在不同的技术之间共享资源。中间件位于客户机/服务器的操作系统之上,管理计算机资源和网络通讯。它是连接两个独立应用程序或独立系