当前位置:编程学习 > asp >>

ASP的技术特点与使用方法

答案:几年以前,业界在动态主页发布方面唯一的渠道是CGI(Common Ga teway Inte易做图ce) 模式。随后出现的 ISAPI、NSAPI和
JDBC等技术方案虽较CGI进步,但从企业网(Intranet )的技术现实来衡量,这些方案仍不适用于进行快速开发、及时维护和大面积
的技术普及。ASP技术的出现,使动态交互式Web主页设计成为一件轻松愉快的工作。只要几行脚本语句,就能将后台的数据库信息发
布到Internet/Intranet上, 在编程和网页脚本的可读性方面大大优于传统的技术方案。
  ASP是 Active Server Pages(动态服务器主页)的缩写,它是一个服务器端的脚本环境,在站点的Web服务器上解释脚本,可产
生并执行动态、交互式、高效率的站点服务器应用程序。ASP可以胜任基于微软Web服务器的各种动态数据发布。   ASP方法与传统静态主页的区别
  把信息系统纳入Internet/Intranet 的框架之后,首先要解决的问题是通过网页访问后台数据库信息。所有应用程序都被分割
为页面的形式,用户的交互操作是以提交表单等方式来实现的,这就要求Web 站点具有很强的动态数据发布能力。然而,目前Web的服
务,仍以提供" 静态"主页内容为主。所谓"静态",指的就是站点的主页内容是"固定不变"的,无法根据用户的需求和实际情况作出相
应的变化。当浏览器通过Internet的HTTP协议向站点的Web服务器申请主页时,站点服务器就会将已设计好的静态的HTML文件传送
给浏览器。若要更新主页的内容, 只能用非在线的手动方式更新HTML的文件数据。
  ASP所设计出的是动态主页,可接收用户提交的信息并作出反应, 其中的数据可随实际情况而改变,无须人工对网页文件进行更
新即可满足应用需要。例如:当在浏览器上填好表单并提交HTTP请求时,可以要求在站点服务器上执行一个表单所设定的应用程序,
而不只是一个简单的HTML文件。该应用程序分析表单的输入数据,根据不同的数据内容将相应的执行结果(通常是数据库查寻的结果
集)以HTML的格式传送给浏览器。数据库的数据可以随时变化,而服务器上执行的应用程序却不必更改,客户端得到的网页信息会始终保持新鲜的魅力。
  ASP的工作原理和配置
  如图所示,当用户申请一个*.asp主页时,Web服务器响应该HTTP请求,调用ASP引擎,解释被申请文件。当遇到任何与ActiveX
Scripting 兼容的脚本(如VBScript和JScript)时,ASP引擎会调用相应的脚本引擎进行处理。若脚本指令中含有访问数据库的请
求,就通过ODBC与后台数据库相连,由数据库访问组件执行访库操作。ASP 脚本是在服务器端解释执行的,它依据访库的结果集自动
生成符合HTML语言的主页, 去响应用户的请求。所有相关的发布工作由Web服务器负责。图1 Active Server Pages工作原理图
  有必要注意访库的具体运作细节。当遇到访库的脚本命令时,ASP 通过ActiveX组件ADO(ActiveX Data Objects)与数据库对
话(ADO是建立在微软新的数据库API,即OLE DB之上的,目前的OLE DB通过ODBC引擎与现存的ODBC数据库交互,进一步的OLE DB版本
将直接与数据库打交道,不再通过ODBC引擎),并将执行结果动态生成一个HTML 页面来返回服务器端,以响应浏览器的请求。在用户
端浏览器所见到的是纯HTM L表现的画面,例如用表格来表现的后台数据库表中的字段内容。由于 ASP结合了脚本语言,可以通过编
程访问Acti veX组件,并且具有现场自动生成HTML的能力,所以它成为建立动态Web站点的有效工具。
  在结构关系上,ASP是通过ODBC与数据库打交道。因此,向上层可兼容各类数据库系统。而对于下层,ASP 产生的HTML 对客户端
的浏览器又有广泛的适应性。但ASP对Web 服务器本身有所挑剔,这看起来似乎是一种缺陷,而实际上也许是一种商业策略——它只
支持微软各种操作系统下的Web 服务器,它们的最低版本是:
  ·Windows NT Server 4.0:MicrosoftⅡS(Internet Informatio n Server)3.0;
  ·Windows NT Workstation 4.0:Microsoft Peer Web Services 3.0;
  ·Windows 95:Microsoft PWS(Personal Web Server)1.0 ,中文 Win95应配中文的PWS。
  ASP的安装分为Windows NT和Windows 95两种情况。对于NT ,IIS 及ActiveX Server Pages都包含在Service Pack 3中;对
于Win95,可使用Visual Studio 服务器构件下的ActiveX Server Pages安装选项。安装成功之后,在程序管理器中会找到一个
ActiveX Se rver Pages Roadmap主页,引导你学习和使用ASP。   ASP的特点与功能   从软件的技术层面看,ASP有如下的特点:
  1. 无需编译 ASP脚本集成于HTML当中,容易生成,无需编译或链接即可直接解释执行。
  2. 易于生成 使用常规文本编辑器(如WINDOWS下的记事本),即可进行*.asp页面的设计。若从工作效率来考虑,不妨选用具有
可视化编辑能力的Visual InterDev。
  3. 独立于浏览器 用户端只要使用可解释常规HTML码的浏览器, 即可浏览ASP所设计的主页。ASP脚本是在站点服务器端执行
的,用户端的浏览器不需要支持它。因此,若不通过从服务器下载来观察*.asp 主页,在浏览器端见不到正确的页面内容。
  4. 面向对象 在ASP脚本中可以方便地引用系统组件和ASP的内置组件,还能通过定制 ActiveX Server Component(ActiveX
服务器组件)来扩充功能。
  5. 与任何ActiveX scripting 语言兼容 除了可使用VBScript 和JScript语言进行设计外,还可通过Plug-in的方式,使用
由第三方所提供的其它scripting 语言。
  6. 源程序码不会外漏 ASP脚本在服务器上执行,传到用户浏览器的只是ASP执行结果所生成的常规HTML码,这样可保证辛辛苦
苦编写出来的程序代码不会被他人盗取。   从应用的层面看,ASP有如下的功能:   1. 处理由浏览器传送到站点服务器的表单输入。
  2. 访问和编辑服务器端的数据库表。使用浏览器即可输入、更新和删除站点服务器的数据库中的数据。
  3. 读写站点服务器的文件,实现访客计数器、座右铭等功能。   4. 提供广告轮播器、取得浏览器信息、URL表管理等内置功能。
  5. 由cookies读写用户端的硬盘文件,以记录用户的数据。   6. 可以实现在多个主页间共享信息,以开发复杂的商务站点应用程序。
  7. 使用VBScript或JScript等简易的脚本语言,结合HTML码,快速完成站点的应用程序。通过站点服务器执行脚本语言,产生或
更改在客户端执行的脚本语言。
  8. 扩充功能的能力强,可通过使用Visual Basic、Java、Visual C ++ 等多种程序语言制作ActiveX Server Component以
满足自己的特殊需要。   ADO访库的技术实现方法
  ADO(ActiveX Data Objects)是一组优化的访问数据库专用对象集,为ASP提供了完整的站点数据库访问解决方案。它可作用于
服务器端,以提供含有数据库信息的主页内容。通过执行SQL命令,让用户在浏览器画面中输入、更新和删除站点服务器的数据库信息。
  ADO使用内置的RecordSets对象作为数据的主要接口。ADO可使用 VBScript、JScrip t语言来控制对数据库的访问,以及查询
结果的输出显示。   ADO可连接多种支持ODBC的数据库,如SQL Server、Oracle、Info rmix等。
  在使用时,首先需在控制面板的ODBC中建立相应的DSN(数据源名) 。要选择系统数据源名,指定所用的驱动程序,如"SQL
Server",在数据来源名称中输入DSN名,并选定服务器和数据库。   使用ADO访问数据库的设计要领是掌握ASP脚本的几个典型语句, 它们是:
  1. 定义数据库组件。有两种定义方法:   ·使用"Server.CreateObject"建立连接的对象。
  Set Conn=Server.CreateObject("ADODB.Connection")   ·使用<OBJECT>标记建立连接的对象。
  <OBJECT RUNAT=Server ID=Conn CLASSID="Clsid:00000293-000 0-0010-8000-00AA 006D2EA4"></OBJECT>
  2. 用"Open"打开待访的数据库:   Conn.Open "DSN名称"
  3. 设定SQL语句,使用"Execute"命令,即可开始执行访问数据库的动作:   Set RS=Conn.Execute("SQL语句")
  其中RS为结果集对象(RecordSets)。
  4. 利用RecordSets对象所提供的属性显示查询结果,如下例将查询结果显示于一个表格中:(其中<%和%>是ASP脚本的专用定界符)
  <TABLE BORDER=1>   <TR>   <% For i =0 to RS.Fields.Count -1 %>
  <TD><% = RS(i).Name %></TD>   <% Next %>   </TR>   <% Do While Not RS.EOF %>
  <TR>   <% For i =0 to RS.Fields -1 %>   <TD><% = RS(i) %></TD>   <% Next %>
  </TR>   <% RS.MoveNext   Loop   %>   </TABLE>   5. 关闭结果集对象,断开与数据库的连接:
  RS.Close   Conn.Close   ASP访问后台数据库运作机制如图2所示。图2 ASP访问后台数据库运作机制
  一个发布后台MS SQL Server样本库pubs中 authors表的完整代码如下(其中<%和%> 是ASP脚本的专用定界符): <html> 
<head> < title>Authors Listing</title> </h ead> <body> <p>Authors Listing</font> <% Set
Connection=Server.CreateObje ct("ADOD B.Connection")
  Connection.Open "authors"
  Set RS=Connection.Execute("SELECT * FROM authors")   %>   </p>
  <table BORDER="1">   <TR>   <% For i=0 to RS.Fields.Count-1 %>
  <TD><% =RS(i).Name %></TD>   <% NEXT %>   </TR>   <% Do While Not RS.

上一个:有关微软新一代开发技术ASP+的介绍
下一个:ASP集合使用

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,