收藏 分享(赏)

计算机网络实用技术讲义(第9章).ppt

上传人:weiwoduzun 文档编号:5300875 上传时间:2019-02-19 格式:PPT 页数:108 大小:1.58MB
下载 相关 举报
计算机网络实用技术讲义(第9章).ppt_第1页
第1页 / 共108页
计算机网络实用技术讲义(第9章).ppt_第2页
第2页 / 共108页
计算机网络实用技术讲义(第9章).ppt_第3页
第3页 / 共108页
计算机网络实用技术讲义(第9章).ppt_第4页
第4页 / 共108页
计算机网络实用技术讲义(第9章).ppt_第5页
第5页 / 共108页
点击查看更多>>
资源描述

1、,第9章 计算机网络应用技术 9.1 动态页面技术9.1.1 公共网关接口(CGI)1、 什么是CGI 静态页面/动态页面 CGI=Common Gateway Interface CGI 程序(1) 客户机与服务器建立连接,并送申请;(2)服务器接收客户机的申请,准备环境变量,启动CGI程序;(3) CGI程序将数据加工处理,并送信息给服务器;(4)服务器送信息给客户机,客户机显示信息给用户。 CGI 标准 CGI是连接外部应用程序与服务器的一个接口标准。 CGI 是运行在web服务器上的一个程序,通常由浏览器的输入触发;它是连接服务器和系统中其他程序如数据库的搜索引擎的桥梁。,HTTP 客

2、户机,HTTP 服务器,CGI 程序,(1),(4),(2),(3),DB,2、 CGI的使用形式Display the Date3、客户机(浏览器)如何与(Web)服务器通信 建立一个连接,即打开一个Socket,将申请内容写入它; 申请一般通过 http的方法get,post,建立一个申请头信息头,一并提交; 服务器根据浏览器的要求将CGI的结果信息返送回客户机(已被加工好的.HTM文 档)。4、CGI如何与服务器通信 CGI从环境变量(用GET)和标准输入(用POST)获得信息如:QUERY_STRING:URL后,第一个“?”后的信息串,用URL的编码规则PATH_INFO:在CGI程

3、序中用相对路径来传递参数PATH_TRANSLATED:在CGI程序中用绝对路径来传递参数环境变量有很多。详见下页表( CGI 环境变量)。 CGI如何返回信息(1)MIME完整类型:首行告诉内容,text/html,text/plain(ASCII)(2)引用另一个文档:给出引用文档或所在服务器的URL(3)直接返回:有一种称为NPH-Script(No-Parse-Header)描述程序,直接 返回信息给客户机。,CGI 环境变量. 环 境 变 量 意 义SERVER_NAME CGI脚本运行时的主机名和IP地址.SERVER_SOFTWARE 你的服务器的类型如: CERN/3.0 或

4、NCSA/1.3.GATEWAY_INTERFACE 运行的CGI版本. 对于UNIX服务器, 这是CGI/1.1.SERVER_PROTOCOL 服务器运行的HTTP协议. 这里当是HTTP/1.0.SERVER_PORT 服务器运行的TCP端口,通常Web服务器是80.REQUEST_METHOD POST 或 GET, 取决于你的表单是怎样递交的.HTTP_ACCEPT 浏览器能直接接收的Content-types,.可以有HTTP Accept header定义HTTP_USER_AGENT 递交表单的浏览器的名称、版本 和其他平台性的附加信息。HTTP_REFERER 递交表单的文本

5、的 URL,不是所有的浏览器都发出这个信息,PATH_INFO 附加的路径信息, 由浏览器通过GET方法发出.PATH_TRANSLATED 在PATH_INFO中系统规定的路径信息.SCRIPT_NAME 指向这个CGI脚本的路径, 是在URL中显示的(如, /cgi-bin/thescript).QUERY_STRING 脚本参数或者表单输入项(如果是用GET递交). QUERY_STRING 包含URL中 问号后面的参数.REMOTE_HOST 递交脚本的主机名,这个值不能被设置.REMOTE_ADDR 递交脚本的主机IP地址.REMOTE_USER 递交脚本的用户名. 如果服务器的au

6、thentication被激活,这个值可以设置。REMOTE_IDENT 如果Web服务器是在ident (一种确认用户连接你的协议)运行, 递交表单的系统也在运行ident, 这个变量就含有ident返回值.CONTENT_TYPE 表单是用POST递交, 这个值将是 application/x-www-form- urlencoded. 在上载文件的表单中, content-type 是个multipart/form-data.CONTENT_LENGTH 对于用POST递交的表单, 标准输入口的字节数.,5、CGI程序的编写与执行 分析问题 规划界面 编写程序 使用语言:C,C+,VB,

7、VC, JAVA,PERL,SHELL , COBOL ,BASIC,FOTRAN HTML :FORM 利用已有成果6、CGI程序例中国教育文献资源数据库 中国教育文献资源数据库,检索词: 检索途径: 篇名 作者 刊名 年代 分类 主题检索条件:,最多显示记录数:20 50 100 200 300 400 500出版年:<< = = > = > , 系统数据由东北师范大学提供,软件由 北京大学图书馆(English Version)研制.Email: 或 ,9.1.2 Web数据库技术的发展1、 CGI技术 标准CGICGI通过环境变量或命令行参数获得用户请求信息;创建子进

8、程启动CGI;CGI程序执行完后,将结果送回HTTP服务器,进而送浏览器。 WinCGIWinCGI称为间接CGI、也称缓冲CGI;CGI程序与CGI接口之间插入一个缓冲区,不使用标准输入/输出;Web接收到浏览器请求时,先创建一个子进程启动缓冲子进程,该子进程与Web 服务器通信,通过环境变量、标准输入/输出、命令行参数获得数据,并将之存入缓冲区;然后,缓冲子进程再创建一个子进程启动CGI;CGI程序读取缓冲区的数据,并处理浏览器请求,输出内容到缓冲区; 缓冲子进程传递输入/输出缓冲区的地址或文件名给CGI子进程;整个过程中,CGI子进程与缓冲子进程之间同步; Web服务器进程与缓冲子进程同

9、 步,以便监视缓冲子进程执行转态。WinCGI特点是Web与CGI交换数据通过缓冲区,不使用标准输入/输出。 优缺点:CGI是独立的外部程序,与Web服务器上的其他进程争夺资源;CGI开发困难:须知HTML,精通低级编程;CGI无状态管理;CGI可移植性差,不同数据库不同的CGI程序。,2、 Web API技术Web API通常以动态链接库(DELL)的形式提供;API的应用程序驻留在Web服务器上,与Web同一地址空间,HTTP服务器 能够直接利用各种资源;Web API比CGI高效;API是特定Web的程序,依赖于Web;API与DBMS相关;API需要多线程、进程、直接协议编程。因此,编

10、API程序比CGI就更困难。当前主要有NETSCAPE公司的 NSAPI, Microsoft公司的ISAPI。(1) NETSCAPE 的LiveWireLiveWire是一个通用的Web开发环境;而不仅是数据库访问接口;LiveWire 的编程语言是JavaScript,它提供了database对象,可操作关系数据库;当应用程序建立数据库连接时,就建立一个database对象;每个应用程序只能有一个数 据库对象;用database对象的connect方法可连接数据库服务器,例如: database.connect(“ORACLE”,”OraSvr”,”system”,”manager”,”

11、myDB”)可连接到ORACLE数据库服务器OraSvr上system/manager用户的myDB数据库上。LiveWire还提供了几种显示数据库查询结果的方法。其中SQL Table最简单、最快;它以HTML形式返回结果,自动控制格式;若要自定格式,可用数据库光标建立显示函数。 LiveWire还提供了数据库更新语句;以及用二进制大对象(BLOB)机制对多媒体处 理等。,(2)IDC(Internet DataBase Connector)IDC是Microsoft Web服务器IIS(Internet Information Server)的一个动态连 接库,它通过ODBC接口访问各种数

12、据库。IDC包括两类文件: IDC脚本文件(*.IDC),用来控制数据库访问,其中包括数据库名、用户名、口令和SQL语句等数据库连接参数,以及与此IDC文件对应的HTML语言摸板文件的路径。 HTML摸板文件(*.HTX),是实际HTML文档的模板,他以直观的方法说明怎样将查询 IDC处理流程:分析传来的URL,如果以“.IDC”为尾,则是一IDC请求,于是将其传 给IDC接口模板,IDC将依次读取脚本文件并与数据库服务器通信;IDC模块得到数据后,通过指定的模板文件得到一个实际的HTML文档返给Web服务器IIS;它将送之给浏览器。IDC不支持别的服务器。3、 RAD技术RAD=Rapid

13、Application DevelopmentWeb数据库发展需要,出现了快速应用开发工具;许多实在原来基础上增加了Internet和Web数据功能。并且具有图形界面、可视化技术支持。如:(1)Intrbuilder基于Javascript;应用程序通常包括:Table,Form,Report,Homepage;两种方法:Intrbuilder Experts生成表、格式、报表、页面等构件;利用Intrbuilder Designer工具建立应用程序。(2)Uniface基于组件的可视化开发环境,组件包括Form,Service,Report等(3)Oracle Developer/2000,

14、Designer/2000,4、 JDBC技术JDBC=Java DataBase Connectivity ;JDBC ODBC;JDBC 是一个支持Java语言标准的数据库API;JDBC访问数据库的过程:用户通过浏览器,从Web服务器上下载含有Java Applet的HTML页面。如果其中的Applet调用了JDBC,则浏览器运行JavaApplet直接与指定的数据库相连接。JDBC是一个独立于数据库的API,包括两部分:JDBC API:提供了应用程序到JDBC Driver Manager的通讯功能;JDBC Driver Manager用于管理各数据库厂商的JDBC驱动程序;JDB

15、C Driver API:支持JDBC Driver Manager与数据库驱动程序的通信。,Oracle driver,Sybase driver,driver,JDBC-ODBC桥 是厂商提供的一个特殊的驱动程序。 它支持JDBC通过现有的ODBC访问数据库,且不会造成性能明显下降。JDBC提供了一系列的Java类接口,如:Java.sql.DriverManager Java.sql.ConnectionJava.sql.StatementJava.sql.ResultSetJava.io.InputJDBC也支持数据库事物处理;JDBC还支持光标(Cursor)操作。 利用JDBC连接

16、数据库的优点: (1)移植性好 (2)数据库无关性 (3)执行效率较高 其缺点: (1)JDBC缺乏组件结构,图形接口(GUI)构架很粗糙,功能还有待于扩展。 (2)尽管JDBC绕过Web服务器直接与数据库连接,并按HTML格式返回结果,但是由于在JDBC Driver Manager要添加一个额外的处理层,这将会减慢系统的响应时间。由于所有的数据库厂商都宣布支持JDBC驱动程序;在Web服务器方面,除Microsoft外,其他的厂商都宣布支持JDBC标准。鉴于如上所述的优点,所以JDBC被不少开发人员看好,JDBC有可能替代CGI。,9.1.3 ORACLE的Web数据库技术1、 Oracl

17、e Web Application Server随着Web数据库应用的不断升温,许多数据库公司在原有产品上增加新的功能,其中以Oracle公司较为突出,它的Oracle Web Application Server允许客户通过Web浏览器访问数据库,并能够调用存储过程生成动态的Web页面而无须依赖CGI。Oracle Web Application Server4.0是一个允许创建和运行基于Web 的分布式、跨平台的动态应用程序的HTTP服务器。它具有模块化、分布式的体系结构,支持多线程的Cartridge,提供开放的应用程序编程接口(API),允许据此创建可移植的不同的应用程序的模型和范例。

18、Web Application Server:由Web Listener(Web 监听器)、Web Request Broker(WRB,Web请求代理器)和Cartridge(服务器端的应用程序)三部分组成,它的体系结构如图所示。,Web Listener(Web监听器):Web Listener是在Oracle主机上的HTTP引擎它监听来自客户端的服务请求,并根据请求的种类决定对请求进行何种处理。它使用HTTP与客户端通讯,可以在多个IP地址/端口上获得连接。Oracle Web Listener具有目录映射功能,可将外部URL中的路径名映射到Web Listener上的内部位置,这样,即

19、使Web Listener上的磁盘被重新规划了,对客户端来说仍没有什么变化。WRB(Web请求代理器):WRB跟踪整个系统的执行,负责处理对Oracle数据库的Web请求。它具有多个能与各种后端技术动态地、无缝地连接的应用程序接口(API),一个WRB API与一个Cartridge的结合就构成一个WRBX(WRB可执行引擎)。WRB还包含一个分配器(Dispatcher),分配器能保持与一批WRBX的进程进行通信,这些WRBX依次与不同的Cartridge接口相连,负责处理从WRB分配器发送过来的针对特定Cartridge的HTTP请求。如果一个WRBX使用的是PL/SQL代理,那么当它产生

20、并等待请求到达时,可以立即开始与数据库建立一个持续的连接。,Cartridge,或服务器端的应用程序:Cartridge是服务器端的应用程序,它处理来自客户端的指定Cartridge的请求,Web Application Server捆绑了一些Cartridge。例如: PL/SQL Cartridge处理那些需要运行Oracle数据库中的过程和函数的请求; Java Cartridge运行服务器端的Java应用程序(不是applets); LiveHTML Cartridge解析含有“Sever-side Include(SSI)”的HTML文档; Oracle Worlds Cartrid

21、ge帮助用户使用VRML(虚拟现实建模语言)构建动态三维世界; Perl Cartridge运行Perl脚本; ODBC Cartridge帮助用户连接支持ODBC的关系型数据库;Cartridge之间是相互独立的。如果一个Cartridge运行失败,其它Cartridge和Web Application Server的部件将不受影响。一个Cartridge实例就是Cartridge的一个进程,每种Cartridge可以有多个Cartridge实例,这些实例可以运行在网络的不同机器上。,2、 Web应用程序服务器处理请求的过程一个Web浏览器向Web应用程序服务器传送一个URL,这个URL被送

22、到Web监听器,由监听器确定对于Web页面来说它是动态的请求还是静态的请求。静态的Web页若URL指定访问文件系统中的一个HTML文件,Web监听器可以从系统中检索到这个文件,并以静态的Web页面的形式返回给浏览器。动态文档请求如果客户的动态文档请求指定用CGI文件执行,那么,Web监听器执行CGI文件,并把结果返回给浏览器。如果URL指定使用WRB作为动态请求处理接口,则监听器首先查看虚拟路径以决定该请求使用哪一类型的Cartridge,然后调用身份验证服务验证客户身份,最后将请求传送给Cartridge 的一个实例,该实例处理请求并把处理结果返回给客户。 3、PL/SQL Cartridg

23、ePL/SQL Cartridge提供开发作为数据库中存储过程的Web应用程序的环境。通过PL/SQL Cartridge,Web用户可连接并访问到Oracle数据库服务器。具体的连接如图。,PL/SQL Cartridge与数据库连接PL/SQL Cartridge与数据库连接时,它从两方面获取所需信息,一个是PL/SQL Agent,另一个是DAD(Database Access Descriptor)。PL/SQL Agent主要指明了该Cartridge所使用的DAD,并定义了所有能使用的端口和事务参数,以及如果发生错误,错误信息的返回级别。DAD定义了一组与数据库连接相关的配置数据:

24、数据库名,SQL*NET服务名,ORACLE_HOME目录,NLS(民族语言支持)配置信息;也可定义用户名和口令。一个PL/SQL Agent与一个DAD相连,不同的Agent可以连接同一个DAD。把配置信息分成Agent和DAD两部分,是为了使用户可以为每一个需连接的数据库只定义一个DAD,当应用不同时,只需修改PL/SQL Agent的配置(如错误级别)即可,而不必定义一个新的DAD来连接数据库,URL解析结构图 http:/:7777/ssb/plsql/class_content.show_link?p_username=qih&p_sid=G1域名 PL/SQL代理 存储过程 参数P

25、L/SQL Cartridge 虚拟路径在一个指定使用PL/SQL Cartridge的HTTP请求中,URL将指定包含连接信息的PL/SQL代理、要运行的存储过程及其所需参数。Web应用程序服务器处理PL/SQL Cartridge请求的过程如下:Web Listener接受客户请求,判断应该由谁来处理这个请求。在这儿,因为是一个Cartridge请求,所以Web Listener将请求传给WRB。WRB通过分配器将这个请求转发给一个可用的PL/SQL Cartridge。PL/SQL Cartridge在请求的URL中找出PL/SQL代理的名称,根据该代理的配置参数决定连接哪个数据库服务器

26、,并设定PL/SQL客户端的配置信息。根据PL/SQL Agent的配置参数值,PL/SQL Cartridge连接相应数据库,准备好调用参数,调用数据库中的过程。调用的过程生成HTML页面,该页面不仅包含静态数据,而且可包含从数据库的表中获取的动态数据。从过程输出的数据通过响应缓冲区返回给PL/SQL Cartridge和客户端。,9.1.4 Microsoft的ASP 技术,1、什么是ASPASP是MicroSoft Active Server Pages 缩写;动态服务器主页的简称。它是微软公司开发的一套服务器端脚本环境,ASP内含于IIS3.0、4.0之中。通过ASP可以结合 HTML

27、 语句 、文本、脚本命令和 ActiveX 元件生成ASP 文件(.ASP);以此,建立动态、交互、高效的WEB网站的服务器的端应用程序,但是不需要复杂的编程。ASP的应用是基于IIS( Microsoft Internet Infomation Server)之上的,IIS有分别用于Windows NT Server和WorkStation的两个版本中(当然IIS4.0也有Windows98版),其功能几乎完全相同,所不同的只是安装过程。IIS3.0中提供了三种服务:WWW、Gopher、FTP,WWW服务为客户浏览器提交WEB页,并允许客户访问.asp文件。在IIS4.0中IIS的管理界面

28、发生了根本性的改变,Internet服务管理器,被取代为Microsoft管理控制台,简称MMC。脚本程序与一般的程序不同,.asp程序无须编译,ASP程序的控制部份,是使用VBScript、JScript等脚本语言来设计的,当执行ASP程序时,脚本程序将一整套命令发送给脚本解释器(即脚本引擎),由脚本解释器进行翻译并将其转换成服务器所能执行的命令。脚本引擎是处理脚本程序的COM(Component Object Model) 。,2、浏览器访问数据库流程(1)用户通过浏览器(FORM)向服务器提出申请 (2)IIS对.ASP文件进行分析,解释执行中语句 (3)用ADO( ActiveX Da

29、ta Objects )的对象Connection与支持ODBC( Open Database Connectivity )的数据库相连 (4)执行SQL语句,操作完毕,Connection对象关闭数据库,将结果送IIS (5)IIS加工结果成HTML格式,送给浏览器 (6)浏览器执行HTML语句,显示结果,User Browser,NT Server IIS,ADO,ODBC,DATABASE,http:/www .asp,HTML webpage,SQL,3、ASP的特点(1)结合HTML代码,使用VBScript、JScript等简单易懂的脚本语言“编程”(2)使用普通的文本编辑器,如W

30、indows的记事本,即可进行编辑设计(3)无须compile编译,可在服务器端直接执行(4)与浏览器无关。Active Server Pages所使用的脚本语言均在WEB服务器端执行,用户端的浏览器不能够执行这些脚本语言(5)Active Server Pages能与任何ActiveX scripting语言相容。除了可使用 VBScript或JScript语言来设计外,还通过plug-in的方式,使用由第三方所提供的其他脚本语言,譬如REXX、Perl、Tcl等(6)Active Server Pages的源程序,不会被传到客户浏览器,程序安全(7)可使用服务器端的脚本来产生客户端的脚本(

31、8)面向对象(Object-oriented)(9)ActiveX Server Components(ActiveX服务器元件)具有无限可扩充性。可以 使用Visual Basic、Java、Visual C+、COBOL等编程语言来编写你所需要的 ActiveX Server ComponentASP程序其实是以扩展名为.asp的纯文本形式存在于WEB服务器上的,你可以用任何文本编辑器打开它,ASP程序中可以包含纯文本、HTML标记以及脚本命令。你只需将.asp程序放在WEB服务器的虚拟目录下(该目录必须要有可执行权限),就可以通过 WWW 的方式访问 ASP 程序了。,4、 ASP的格式

32、ASP语句标记符:ASP使用上述符号将script程序码包起来,嵌在HTML语句中,IIS可以 识别并执行之。如:严格的来讲,在VBScript中变量是不用声明的脚本语言类型声明标志:在VBScript中声明一个变量可以使用“Dim”语句,如下: 如果使用其他描述语言(非VBscript),如Jscript,则需如下语句:procedure definition 在ASP中,此标记仅限于对脚本语言的声明中,若将脚本语言写入括号中,IIS不予执行,而是将之留给浏览器解释执行。,在ASP中,缺省的Scriping语言是 VBScript。在VBScript中,过程被分为两类:Sub过程和Funct

33、ion过程。 Sub过程是包含在Sub和End Sub语句之间的一组VBScript语句,执行操作但不返回值。Sub过程可以使用参数(由调用过程传递的常数、变量或表达式)。如果Sub过程无任何参数,则Sub语句必须包含空括号 ()。 Function 过程是包含在Function和End Function语句之间的一组VBScript语句。Function过程与 Sub过程类似,但是Function过程可以返回值。CreateObject方法 Server.CreateObject是ASP中最为实用,最强劲的功能。它用于创建已经注册到服务器上的ActiveX组件实例。通过ActiveX组件,能

34、够轻松地扩展ActiveX的能力。 用ActiveX组件,可以实现数据库连接、文件访问、广告显示和其他VBScript不能提供或不能简单地依靠单独使用ActiveX所能完成的功能。其语法如下: Server.CreateObject(“Component Name”) 由Server.CreateObject方法创建的对象,默认具有页作用域。即在当前ASP页处理完成之后,服务器将自动破坏这些对象。如果要创建有会话或应用程序作用域的对象,可以使用 标记并设置SESSION APPLICATION 的SCOPE属性,也可以在对话及应用程序变量中存储该对象。如下例: 这里需要注意的是,不能创建与内建

35、对象同名的对象实例,否则,如下列脚本将返回错误。 % Set Response = Server.CreateObject(“Response“),5、 内建对象(上)Active Server Pages提供了可在脚本中使用的六个内建对象。 (1)Request对象 可以使用Request对象访问任何基于HTTP请求传递的所有信息,包括从HTML表格用POST或GET方法传递的参数、cookie和用户认证。Request对象使您能够访问客户端发送给服务器的二进制数据。通常是浏览器上FORM传来的用户申请消息。 语法: Request.集合|属性|方法(变量) (2)Response对象与Re

36、quest相反,Response对象是用来控制发送给用户的信息,包括直接发送信息给浏览器、重定向浏览器到另一个URL或设置cookie的值。 语法: Response.collection|property|method (3)Application在ASP的内建对象中,还有一些非常实用的代表Active Server应用程序和单个用户信息的对象。在同一虚拟目录及其子目录下的所有.asp文件构成了ASP应用程序。 使用Application对象,非但可以在给定的应用程序的所有用户之间共享信息,并在服务器运行期间持久的保存数据。而且,Application对象还有控制访问应用层数据的方法和可用于

37、在应用程序启动和停止时触发过程的事件。 语法: Application 对象,5、内建对象(下) (4)Session 与Application对象具有相近作用的另一个就是Session。可以使用Session对象存储特定的用户会话所需的信息。当用户在应用程序的页之间跳转时,存储在Session对象中的变量不会清除,而用户在应用程序中访问页面时,这些变量始终存在。当用户请求来自应用程序的Web页时,如果该用户还没有会话,则Web服务器将自动创建一个Session对象。当会话过期或被放弃后,服务器将终止该会话。 (5)ServerServer对象提供对服务器上的方法和属性的访问,其中大多数方法和

38、属性是作为实用程序的功能服务的。有了Server对象,你就可以在服务器上启动ActiveX对象例程,并使用Active Server服务提供象HTML和URL编码这样的函数。 语法 Server.property|method (6)Global.asa文件Global.asa文件是一个可选文件,程序编写者可以在该文件中指定事件脚本,并声明具有会话和应用程序作用域的对象。该文件的内容不是用来给用户显示的,而是用来存储事件信息和由应用程序全局使用的对象。该文件的名称必须是Global.asa且必须存放在应用程序的根目录中。每个应用程序只能有一个Global.asa文件。 在Global.asa文

39、件中声明的过程只能从一个或多个与Application_OnStart、Application_OnEnd、Session_OnStart和Session_OnEnd事件相关的脚本中调用。在基于ASP的应用程序的ASP页中,它们是不可用的。如果要在应用程序之间共享过程,可在单独的文件中声明这些过程,然后使用服务器端包容(SSI)语句将该文件包含在调用该过程的ASP程序中。通常,包含文件的扩展名应为.inc。,6、ActiveX组件 ActiveX组件是建立Web应用程序的关键,它提供了在脚本中执行任务的对象。 组件是包含在动态链接库.dll或可执行文件.exe中的可执行代码。组件可以提供一个或

40、多个对象以及对象的方法和属性。组 件 是 可 以 重 复 使 用 的。 ActiveX组件是一个文件,该文件包含执行某项或一组任务的代码,组件可以执行公用任务,这样程序员们就不必自己去创建执行这些任务的代码。也 可 以 从 第 三 方 开 发 者 处 获 得 可 选 的 组 件 , 也 可 以 编 写 自 己 的 组 件。利用组件作为脚本和基于Web 应用程序的基本构造块。只要知道如何访问组件提供的对象,即使是位编写脚本的新手,也可以在不了解组件运作方式的情况下编写脚本。 总之,组件使您不用学习编程就能够编写强大的脚本。如 果 您 是 位 Web 应 用 程 序 的 开 发 者, 可 以 使

41、用 任 何 支 持 组 件 对 象 模 型(COM) 的 语 言 来 编 写 组 件, 如, C、 C+、 Java 或 Visual Basic。 如 果 你 熟 悉 COM 编 程, ActiveX 组 件 就 是 Automation 服 务 器。 但 是 要 在 Web 服 务 器 上 运 行, ActiveX 组 件 不 能 有 图 形 用 户 接 口 元 素, 如 Visual Basic 的 MsgBox 函 数。要使用组件提供的对象,请创建对象的实例并将这个新的实例分配变量名。使用ASP的Server.CreateObject方法可以创建对象的实例,使用脚本语言的变量分配指令可

42、以为对象实例命名。如下例: Set db=Server.CreateObject(“ADODB.Connection“) 这里的变量db就是ASP程序创建的访问数据库的对象实例.,7、 常见ActiveX组件(上) (1) AdRotator 创 建 一 个 AdRotator 对 象, 该 对 象 可 按 指 定 计 划 在 同 一 页 上 自 动 轮 换 显 示 广 告。 (2) Browser Capabilities 创 建 一 个 BrowserType 对 象, 该 对 象 决 定 访 问 Web 站 点 的 每 个 浏 览 器 的 性 能、 类 型 及 版 本。 (3) Data

43、base Access提 供 用 ActiveX Data Objects (ADO) 对 数 据 库 的 访 问。 (4) Content Linking 创 建 一 个 NextLink 对 象, 该 对 象 可 生 成 Web 页 内 容 列 表, 并 象 书 一 样 将 各 页 顺 续 连 接。 (5) File Access 组 件 提 供 文 件 的 输 入 输 出 访 问。,7、常见ActiveX组件(下)(6) Collaboration Data Objects for NTS 组 件可 以 快 速、 简 便 的 在 Web 页 上 添 加 收 发 邮 件 功 能。 该 组

44、件 只 适 用 于 Internet Information Server for Windows NT?Server 。 (7) MyInfo 创 建 一 个 MyInfo 对 象, 该 对 象 追 踪 个 人 信 息, 例 如 站 点 管 理 员 的 姓 名、 地 址 及 显 示 选 择。 (8) Counters 创 建 一 个 Counters 对 象, 该 对 象 可 以 创 建、 保 存、 增 加 或 检 索 任 意 数 量 的 独 立 计 数 器。 (9) Content Rotator 自 动 翻 转 Web 主 页 上 的 HTML 内 容 字 符 串。 (10)Page C

45、ounter 记 录 并 显 示 Web 页 被 打 开 的 次 数。,8、 Database AccessASP 内 建 的 Database Access 组 件 能 够 通 过 ActiveX Data Objects (ADO) 访 问 存 储 在 服 务 器 端 的 数 据 库 或 其 他 表 格 化 数 据 结 构 中 的 信 息。ADO 是 对 当 前 微 软 所 支 持 的 数 据 库 进 行 操 作 的 最 有 效 和 最 简 单 直 接 的 方 法, 它 是 一 种 功 能 强 大 的 数 据 访 问 编 程 模 式, 从 而 使 得 大 部 分 数 据 源 可 编 程 的

46、 属 性 得 以 直 接 扩 展 到 你 的 Active Server 页 面 上。 可 以 使 用 ADO 去 编 写 紧 凑 简 明 的 脚 本 以 便 连 接 到 ODBC (Open Database Connectivity ) 兼 容 的 数 据 库 和 OLE DB 兼 容 的 数 据 源。ADO 与 RDO (Remote Data Objects) 有 某 种 类 似 的 地 方。 但 ADO 的 访 问 的 速 度 更 快, 内 存 需 要 更 小。 Database Access 组 件 通 过 ADO 连 接 并 操 作 WEB 数 据 库 的 步 骤: 第一步:指定

47、想要连接的数据库有DSN (Data Source Name)和DSN-less两种方法。 DSN方法如下: 1、 单击“开始”,选设置控制面板 2、 双击图标“32位ODBC”, 弹出一个对话框,选标签“System DSN” 3、 单击“Add”添加一个DSN入口,选择如“Microsoft Access Drive”并确认 4、 在“Data Source Name”栏里输入你希望指定的DSN,然后单击“Select”选择 数据库存放位置,你可以按“Browse”来选取。 5、 以上步骤完成后在ASP程序中指定DSN,如下:,DSN-less方法如下:另一种通过在ASP文件里直接指定数据

48、库文件所在位置,而无需建立DSN的方法。 使 用 DSN-less 方 法 直 接 指 定 远 端 数 据 库 所 在 位 置 , 方 法 如 下 :在指定了想要连接的数 据 库 后,就可以通过以下方 法 连 接 并 打 开 数 据 库 :第二步 : 指定想要执行的SQL语句,使用RecordSet 。如选名字中有“华”字的人Recordset 的 使 用 方 法 如 下 : Set rs = Server.CreateObject(“ADODB.Recordset“) rs.Open SQL 指 令 , Conn, 1, 1 读 取 或 rs.Open SQL 指 令 , Conn, 1, 3 新 增、 修 改、 或 删 除,

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

当前位置:首页 > 网络科技 > 计算机原理

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报