您的位置:网站首页 > asp源码 > 正文

如何利用ASP开发Web应用

类别:asp源码 日期:2018-6-2 21:52:06 人气: 来源:

  通常情况下,用户通过浏览器看到的网页大多是静态的,而随着Web 应用的发展,用户希望能够看到根据要求而动态生成的主页,例如响应用户查询数据库的要求、生成报表等。

  根据用户请成动态主页的传统方法有CGI、ISAPI 等。CGI 是根据浏览器端的http 请求激活响应进程,每一个请求对应一个进程。当同时有很多请求时,程序挤占系统资源,造成效率低下;ISAPI 针对这一缺点进行改进,利用dll(动态链接库)技术,以线程代替进程,提高了性能和速度,但要考虑线程的同步问题,而且开发步骤烦琐。这两种技术和另一普遍使用的开发动态网页的技术Java 都还存在着另外一个问题,那就是开发困难,程序的开发和HTML 写作是两个完全不同的过程,需要专门的程序员开发。而较简单的开发技术如JavaScript 和IDC(Internet Database Connector) 等功能有限,不敷使用。

  ASP 即ActiveX Server Page,是微软公司的新一代开发动态网页的技术,具有开发简单、功能强大等优点,可以非常直观简易地实现复杂的Web 应用。本文将介绍ASP 的基本概念、特点、开发要素,并通过两个典型的例子介绍利用ASP 开发Web 应用的具体实现。

  ASP 是一个Web 服务器端的开发,利用它可以产生和运行动态的、交互的、高性能的Web 服务应用程序。

  ASP 属于ActiveX 技术中的Server 端技术。与常见的在Client 端实现动态主页的技术如Java applet、ActiveX Control、VB Script、JavaScript 等不同,ASP 中的命令和Script 语句都是由服务器来解释执行的,执行结果产生动态生成的Web 页面并送到浏览器;而Client 端技术的Script 命令则是由浏览器来解释执行。由于ASP 是在服务器端解释执行,开发者可以不必考虑浏览器是否支持ASP;同时由于它在服务器端执行,开发者也不必担心别人下载程序从而窃取编程逻辑。

  ASP 通过后缀名为.asp 的ASP 文件来实现,一个ASP 文件相当于一个可执行文件,因此必须放在Web 服务器上有可执行权限的目录下。

  当浏览器向Web Server 请求调用ASP 文件时,就启动了ASP。Web Server 开始调用ASP,将被请求的.asp 文件从头读到底,执行每一个命令,然后动态生成一个HTML 页面并送到浏览器。ASP 文件的制作和HTML 类似,且和HTML 开发集成,可以在同一个过程完成。通过ASP 内置的对象、服务器组件(Server Component)可以完成非常复杂的任务,而且用户还可以自己开发或利用别人开发的服务器组件完成专门的任务。

  制作ASP 文件非常简单,可以用任何无格式的文本编辑工具(笔者一直使用Notepad), 也可用专门的主页开发工具和ASP 开发工具如Visual InetDev 等。请看下面的例子:

  现在时间:将其存成一后缀为.asp 的文件,放在一个Web Server 指定的有执行权的目录下,链接上后,它就能把服务器的当前时间输出。要注意:asp 文件不能通过打开的方式来执行,而必须是链接,例如,假定asp 是Web Server( 主机名host) 上有执行权限的一个虚拟目录,要执行该目录下的hello.asp,调用方式应该是:

  ASP 并不是一种语言,它只是提供一个来运行ASP 文件中的Script。为了顺利使用ASP,必须遵守ASP 的语法规则。ASP 的语法由下面几个元素组成:

  同样,ASP Script 的命令和输出表达也有定界符,同text 和HTML 都不同,它的命令定界符是“”。例如下面是一条赋值语句:

  ASP 可以使用任何Script 语言,只要提供相应的脚本驱动(engine)即可,ASP 自身提供了VBScript 和JScript 的驱动。它缺省的Script 语言是VBScript,当然开发者也可以改变这一缺省设置,例如要改为Jscript,只需在文件开头注明即可。中的部分就是描述语言程序,和HTML 类似。不同的是在HTML 中这一部分由浏览器解释执行,在ASP 里却是由Web Server 解释执行。

  可以在一个.asp 文件里使用几个不同的Script 语言,只需把每段用和括起来即可。也可以包含在浏览器端执行的Script,将描述语句注释起来,该段程序就由浏览器来解释执行。

  用的最多的是前三个对象。Request 和Response 是用来实现Web Server 与浏览器交互。Request 的一个重要方法是Form(),其作用是提取浏览器的用户输入信息。例如主页中有一个文本编辑框,已指定它的变量名为“name”,form 的action 为某asp 文件。下面的语句就可以取得用户填在里面的内容:

  Server 对象有两个重要方法:MapPath 和CreateObject。MapPath 用来将Web Server 的虚拟径还原成实际径;CreateObject 可能是最重要的一个方法,用来产生服务器组件的对象实例,详细介绍见下文。

  通过服务器端的Script 和HTML,可以很容易地生成动态网页,但功能有限,例如不能连接服务器数据库、使用网络功能或访问服务器文件系统等。为了解决这一问题,就要用到COM 技术,即Component Object Model。几乎所有的ActiveX 技术都是以此为基础,通过COM,可以轻易地使用其它COM 组件,这种对于Web 可共享的COM 组件,就是服务器组件。一个服务器组件就相当一个对象,提供属性和方法来使用服务器资源。服务器组件可以由支持ActiveX 的任何第三方开发,ASP 本身也自带了五个服务器组件,可以直接使用,并能完成大部分服务器端的工作。

  要调用服务器组件,必须先利用Server 对象中的方法CreateObject 产生服务器组件对象实例, 如下所示:

  这里,ProgID 指定了构件标识,构件可以是各种形式的可执行程序(DLL、EXE 等),也不必考虑它的,只要在Windows NT(或95)中登记注册这些程序,COM 就会在系统资料库(Registry) 里这些资料,同时以ProgID 方式让程序员调用。登记用regsvr32 程序,可以用RegEdit 程序来看ProgID。构件产生后,就可以使用它的方法和属性进行工作。

  ASP 提供了5 个服务器组件,其中最重要的两个是数据库访问构件ADODB 和文件访问构件FileSystemObject,本文的例子将说明它们的使用。

  对于一些特殊的需求,开发者还可以自己开发服务器构件,利用VB 或VC 可以很方便地开发出一些构件,然后登记这些构件,就可以用Server.CreateObject 来调用。另外还有许多站点上有开发好的构件供下载,只要在自己的机器上将它们登记就可以使用。

  现在许多主页上都有一个计数器来记录该主页被访问的次数,通常计数器通过CGI 实现,开发过程比较复杂,一些非专业的程序员难以实现。而通过ASP 的文件访问组件File Access Component (Scripting.FileSystemObject),可以很方便地产生一个计数器。下面是一个例子,其原理是:根据page hits 生成计数文件,读出计数文件中的数字,再根据它动态地调出代表1、2、3 等数字的图像。其基本过程和CGI 差不多,但在送出图像时不同,CGI 是通过程序来动态生成一整幅图像,而我们的方法是将已存在于机器中的图像一张一张地调出,这样就可以制作非常精美的数字图像。其程序片段为:

  让用户通过浏览器查询服务器的后端数据库是许多Web 服务提供者必需有的服务,ASP 通过内置的ADODB 组件来实现这一功能。ADO 即Active Data Object,同DAO 和RDO 一样,属于数据库应用的COM 构件,不同的是,ADO 是专门针对Internet 和Web 开发的,并对此进行了优化。利用ADO 查询数据库的步骤是:

  ASP 的开发简单而直观,开发过程可以方便地和HTML 集成;利用COM 技术,还可以实现更强大更复杂的功能。

关键词:asp开发工具
0
0
0
0
0
0
0
0
下一篇:没有资料

相关阅读

网友评论 ()条 查看

姓名: 验证码: 看不清楚,换一个

推荐文章更多

热门图文更多

最新文章更多

关于联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 人才招聘 - 帮助

CopyRight 2002-2012 技术支持 源码吧 FXT All Rights Reserved

赞助合作: