网上论坛系统的设计与实现(3)

2019-03-15 13:13

第2章 ASP技术综述

2.1 IIS与ASP的结合

在过去,客户机/服务器结构的设计与Web的相关技术几乎处于平行线上,两者相互独立并无法作出集成性的设计。现在我们利用IIS+ASP构成三层式Web结构(如图1所示)的中间一层,将客户机/服务器结构与Web密切结合,完成前后端两者的集成输出功能,使得Web站点的开发更方便,实现的功能更强大。

利用IIS+ASP技术来集成Web前后端所带来的强大效益可归结为以下几个方面:

1. 减少构建和维护成本 2. 加快联机过程

3. 应用软件集中在服务器端开发管理

4. 前端可使用任何讨论器(IE、Netscape?..) 5. 后端可存取任何数据库 (SQL、Access?..)

6. 可使用任何脚本语言开发 (VBScript、JavaScript、PERL?..)

数据库服务器 后端数据库 ActiveX Server元件 程序和计算逻辑 Microsoft IIS + ASP ActiveX Server元件 前端讨论器 讨论器 (图1)

11

2.2 ASP的内部特点

2.2.1.ASP内部6大特点

ASP提供了6个功能强大的内部对象,每个对象具有各自的属性(Property)、方法(Method),有的还拥有数据集合(Collection)与事件(Event),它们共同完成Web中的一些重要工作。这6个对象及其功能描述如表1所示:

对象名称 Request Response Server Session Application 功能描述 从客户端取得信息 将信息送给客户端 提供一些Web服务器工具 储存在一个Session内用户信息,该信息仅可被该用户访问 在一个ASP-Application中让不同的客户端共享信息 ObjectContext 配合Microsoft Transaction服务器进行分布式事务处理 (表1 ASP 内部6大对象及其功能)

合理地运用这些对象可以使原本复杂,烦琐的工作变得简捷而条理清晰。 我们可以用以下的语法直接使用这些对象:对象/属性/方法/数据集合。

2.2.2. Global文件

每一个以Active Server Pages为基础的应用程序都拥有一个Global.asa文件(ASA后缀名其实是Active Server Application的缩写),它位于每一个应用程序的基点目录之下。当Active Server Pages做下面两个动作时,Server便会去读Global.asa文件:

①.Web Server启动之后,一个应用程序目录中任一个ASP文件被提出第一个HTTP请求(Request)时。

②. 不具有任何Session的客户端向Server请求一个ASP文件时。

前面已经提到Application和Session这两个ASP的内部对象。Application对象内的

12

信息供所有正在执行该应用程序的用户分享,它创建于Web Server启动后一个应用程序中任一ASP文件被提出第一个HTTP请求时,结束于Server端停止运行。而Session对象仅属于一位用户,维持一个用户端的信息,其他用户无法访问,它创建于一个不具有Session的用户向Server请求一个ASP文件时,结束于该Session到期(即用户端超过某时间段没有向Server提出要求或刷新Web页面)或Abandon语句的调用。可见,Global.asa文件的调用与Application与Session这两个对象密切相关。事实上我们通常在Global。asa文件中写入以下内容:

① Application或Session的开始事件(Start-event)。 ② Application或Session的结束事件 (End-event)。

这样,在一个Application或Session对象被创建或结束时,系统会自动完成Global.asa文件中写入的相应事件。值得注意的是,如果一个Application与一个Session同时开始,Active Server Pages会先处理Application的开始事件,而如果一个Application与一个Session同时结束,Active Server Pages则会先处理Session的结束事件。

2.3 利用ADO访问数据库

ADO(ActiveX Data Objects)是一种操作Microsoft所支持的数据库的新技术。在ASP中,ADO可以看作是一个服务器组件(Server Component),更简单点说,是一系列的对象,应用这些功能强大的对象,即可轻松完成对数据库复杂的操作。本文中个性化页面的实现便大量地用到了ADO技术。具体的操作步骤可以归纳为以下几步:

①创建数据库源名(DSN) ②创建数据库链接(Connection) ③创建数据对象 ④操作数据库

⑤关闭数据对象和链接 每一步的做法如下:

13

2.3.1.创建数据源名

DSN(Date Source Name)即数据源名称。我们知道,ODBC是一种访问数据库的方法,只要系统中有相应的ODBC驱动程序,任何程序就可以通过ODBC操纵驱动程序的数据库。比如我们系统中有Access的ODBC驱动程序,那么即使我们没有Access软件,也可以在我们的程序中对一个Access的MDB数据库加、删、改记录。而且我们根本不用知道这个数据库是放在哪里的。我们只要写出SQL语句,ODBC驱动程序就会帮我们做一切事情。我们在给ODBC驱动程序传SQL指令时,即是用DSN来告诉它到底操作的是哪一个数据库。如果数据库的平台变了,比如我们改用了SQL Server的数据库,只要其中表的结构没变,我们就不用改写我们的程序,只要重新在系统中配置DSN就行了。由此可见,DSN是应用程序和数据库之间的桥梁。

2.3.2.创建数据库链接

链接用以保持一些关于正在访问的数据的一些状态信息,以及链接者信息。ASP文件中如果要访问数据,必须首先创建与数据库的链接,其语法如下:

set Conn=Server.createObject(“ADOBD.CONNECTION”) 这条语句创建了链接对象Conn,接下来:

connstr=\\

conn.Open connstr

这条语句打开链接,用到了DSN,本例为“connstr”。

以上两个步骤缺一不可,因为链接对象的创建与打开是两回事,只有打开了才真正可以使用。

2.3.3.创建数据对象

ADO中的数据对象通常保存的是查询结果。Record Set是ADO中最复杂的对象,有许多属

14

性和方法。Record Set保存的是一行行的记录,并标有一个当前记录。以下是创建方法:

Set Record Set=Conn.Execute(sqtStr)

这条语句创建并打开了对象Record Set,其中Con是先前创建的链接对象,rs是一个字串,代表一条标准的SQL语句。例如:

rs=“SELECT * FROM shop_books” Set Record Set=mConn.Execute(rs)

这条语句执行后,对象Record Set中就保存了表tab1中的所有记录。

2.3.4.操作数据库

我们通过调用链接对象的Execute方法来将查询结果返回给一个数据对象或进行插入、删除等操作。例如:

rs=“INSERT INTO tab1 VALUES(1,2)” mConn.Execute(rs) /执行插入操作

2.3.5.关闭数据对象和链接对象

在使用了ADO对象之后要关闭它,因为它使用了一定的服务器资源。通过调用方法close实现关闭,然后再释放它。

Record Set.close Set Record Set=Nothing /关闭创建的数据对象 mConn.close

15


网上论坛系统的设计与实现(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:新目标英语八年级下Unit3 Section A 1a-1c练习含答案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: