静态网页的一些功能限制,实现动态网页技术;
(2)ASP文件是包含在HTML代码所组成的文件中的,易于修改和测试;
(3)服务器上的ASP解释程序会在服务器端制定ASP程序,并将结果以HTML格式传送到客户端浏览器上,因此使用各种浏览器都可以正常浏览ASP所产生的网页;
(4)ASP提供了一些内置对象,使用这些对象可以使服务器端脚本功能更强。例如可以从web浏览器中获取用户通过HTML表单提交的信息,并在脚本中对这些信息进行处理,然后向web浏览器发送信息;
(5)ASP可以使用服务器端ActiveX组建来执行各种各样的任务,例如存取数据库、发Email或访问文件系统等。
(6)由于服务器是将ASP程序执行的结果以HTML格式传回客户端浏览器,因此使用者不会看到ASP所编写的原始程序代码,可放置ASP程序代码被窃取。
2.2ASP与IIS
2.2.1IIS简介
Wsb服务器是Web应用程序的心脏。IIS(InternetInformationServer)是微软推出的WindowsNTOptionPack的主要成员,作为Win2000server的扩展,自推出以来已经有了很大发展,其体系结构是当今市场上最受关注的Web服务器之一。新推出的IIS4.0版本增强了系统安全性,具有服务器端脚本开发调试,内容管理和站点分析,崩溃防护,内置JAVA虚拟机及全面支持ASP等强大功能。
2.2.2IIS与ASP的结合
在过去,客户机/服务器结构的设计与Web的相关技术几乎处于平行线上,两者相互独立并无法做出集成性的设计。现在我们利用IIS+ASP构成三层式Web结构(如图2.1所示)的中间一层,将客户机/服务器结构与Web密切结合,完成前后端两者的集成输出功能,使得Web站点的开发更方便,实现的功能更强大。
利用IIS+ASP技术来集成Web前后端所带来的强大效益可归结为以下几个方面:
1.减少构建和维护成本
2.加快联机过程
3.应用软件集中在服务器端开发管理
4.前端可使用任何浏览器(IE、Netscape.....)
5.后端可存取任何数据库(SQL、Access.....)
6.可使用任何脚本语言开发(VBScript、JavaScript、PERL.....)
图2.2
2.3ASP的内部特点
2.3.1ASP内部6大对象
ASP提供了6个功能强大的内部对象,每个对象具有各自的属性(Property)、方法(Method),有的还拥有数据集合(Collection)与事件(Event),它们共同完成Web中的一些重要工作。这6个对象及其功能描述如表2.1所示。
对象名称
功能描述
Request
从客户端取得信息
Response
将信息送给客户端
Server
提供一些Web服务器工具
Session
储存在一个Session内的用户信息,该信息仅可被该用户访问
Application
在一个ASP-Application中让不同的客户端共享信息
ObjectContext
配合MicrosoftTransaction服务器进行分布式事务处理
表2.1ASP内部6大对象及其功能
合理地运用这些对象可以使原本复杂,烦琐的工作变得简捷而条理清晰。
我们可以用以下的语法直接使用这些对象:对象/属性/方法/数据集合
2.3.2Global文件
每一个以ActiveServerPages为基础的应用程序都拥有一个Global.asa文件(ASA后缀名其实是ActiveServerApplication的缩写),它位于每一个应用程序的基点目录之下。当ActiveServerPages做下面两个动作时,Server便会去读Global.asa文件:
1.WebServer启动之后,一个应用程序目录中任一个ASP文件被提出第一个HTTP请求(Request)时。
2.不具有任何Session的客户端向Server请求一个ASP文件时。
前面已经提到Application和Session这两个ASP的内部对象。Application对象内的信息供所有正在执行该应用程序的用户分享,它创建于WebServer启动后一个应用程序中任一ASP文件被提出第一个HTTP请求时,结束于Server端停止运行。而Session对象仅属于一位用户,维持一个用户端的信息,其他用户无法访问,它创建于一个不具有Session的用户向Server请求一个ASP文件时,结束于该Session到期(即用户端超过某时间段没有向Server提出要求或刷新Web页面)或Abandon语句的调用。可见,Global.asa文件的调用与Application与Session这两个对象密切相关。事实上我们通常在Global。asa文件中写入以下内容:
1.Application或Session的开始事件(Start-event)。
2.Application或Session的结束事件(End-event)。
这样,在一个Application或Session对象被创建或结束时,系统会自动完成Global.asa文件中写入的相应事件。值得注意的是,如果一个Application与一个Session同时开始,ActiveServerPages会先处理Application的开始事件,而如果一个Application与一个Session同时结束,ActiveServerPages则会先处理Session的结束事件。
2.4利用ADO访问数据库
ADO(ActiveXDataObjects)是一种操作Microsoft所支持的数据库的新技术。在ASP中,ADO可以看作是一个服务器组件(ServerComponent),更简单点说,是一系列的对象,应用这些功能强大的对象,即可轻松完成对数据库复杂的操作。本文中个性化页面的实现便大量地用到了ADO技术。具体的操作步骤可以归纳为以下几步:
1.创建数据库源名(DSN)
2.创建数据库链接(Connection)
3.创建数据对象
4.操作数据库
5.关闭数据对象和链接
每一步的作法如下:
一、创建数据源名
DSN(DateSourceName)即数据源名称。我们知道,ODBC是一种访问数据库的方法,只要系统中有相应的ODBC驱动程序,任何程序就可以通过ODBC操纵驱动程序的数据库。比如我们系统中有Access的ODBC驱动程序,那么即使我们没有Access软件,也可以在我们的程序中对一个Access的MDB数据库加、删、改记录。而且我们根本不用知道这个数据库是放在哪里的。我们只要写出SQL语句,ODBC驱动程序就会帮我们做一切事情。我们在给ODBC驱动程序传SQL指令时,即是用DSN来告诉它到底操作的是哪一个数据库。如果数据库的平台变了,比如我们改用了SQLServer的数据库,只要其中表的结构没变,我们就不用改写我们的程序,只要重新在系统中配置DSN就行了。由此可见,DSN是应用程序和数据库之间的桥梁。
二、创建数据库链接(Connection)
链接用以保持一些关于正在访问的数据的一些状态信息,以及链接者信息。ASP文件中如果要访问数据,必须首先创建与数据库的链接,其语法如下:
setConn=Server.createObject("ADOBD.CONNECTION")
这条语句创建了链接对象Conn,接下来:
connstr="Provider=Microsoft.Jet.OLEDB.4.0;Data.Source="&Server.MapPath(""&db&"")
conn.Openconnstr
这条语句打开链接,用到了DSN,本例为"connstr"。
以上两个步骤缺一不可,因为链接对象的创建与打开是两回事,只有打开了才真正可以使用。
三、创建数据对象(RecordSet)
ADO中的数据对象通常保存的是查询结果。RecordSet是ADO中最复杂的对象,有许多属性和方法。RecordSet保存的是一行行的记录,并标有一个当前记录。以下是创建方法:
SetRecordSet=Conn.Execute(sqtStr)
这条语句创建并打开了对象RecordSet,其中Con是先前创建的链接对象,rs是一个字串,代表一条标准的SQL语句。例如:
rs="SELECT*FROMshop_books"
SetRecordSet=mConn.Execute(rs)
这条语句执行后,对象RecordSet中就保存了表tab1中的所有记录。
四、操作数据库
我们通过调用链接对象的Execute方法来将查询结果返回给一个数据对象或进行插入、删除等操作。例如:
rs="INSERTINTOtab1VALUES(1,2)"
mConn.Execute(rs)
/执行插入操作
五、
上一篇:
ASP+ACCESS深水蓝文学网站(论文和程序)
下一篇:
试析影响公路路面平整度的因素及应采取的施工措施