前言:我们精心挑选了数篇优质asp技术论文文章,供您阅读参考。期待这些文章能为您带来启发,助您在写作的道路上更上一层楼。
目前在WINDOWS环境下有多种访问WEB数据库的技术,主要有:
1.公共网关接口CGI(CommonGatewayInterface)
CGI是较早实现的技术。适用于多种服务器平台,如UNIX、WINDOWS等,但CGI的开发成本高、维护困难、功能有限、不具备事务处理功能、占用服务器资源较多。
2.INTERNET数据库连接器IDC(InternetDatabaseConnector)
IDC集成在ISAPI(InternetServerAPI)中,充分利用了DLL技术,易扩充,但编程较CGI更为复杂,只适用于小型数据库系统。
3.先进数据库连接器ADC(AdvanceDatabaseConnector)
ADC提供了ActiveXControl来访问数据库,它的主要特点是数据查询由用户端浏览器执行,因而需将服务器端数据库中的部分记录下载到用户端,系统开销较大、响应慢,只适用于特别频繁的数据库查询操作。
4.JAVA/JDBC语言编程
JAVA语言是一种面向对象、易移植、多线程控制的语言,可通过JDBC去连接数据库。用JAVA/JDBC编写的软件可移植性强,适用于多种操作系统,但其执行效率和执行速度还不理想,目前无法建立高效、高速的应用。
5.动态服务器页面asp(ActiveServerPage)
ASP是微软公司最新推出的WEB应用开发技术,着重于处理动态网页和WEB数据库的开发,编程灵活、简洁,具有较高的性能,是目前访问WEB数据库的最佳选择。
二.ASP简介
1.ASP访问数据库的原理
ASP是服务器端的脚本执行环境,可用来产生和执行动态的高性能的WEB服务器程序。
当用户使用浏览器请求ASP主页时,WEB服务器响应,调用ASP引擎来执行ASP文件,并解释其中的脚本语言(JScript或VBScript),通过ODBC连接数据库,由数据库访问组件ADO(ActiveXDataObjects)完成数据库操作,最后ASP生成包含有数据查询结果的HTML主页返回用户端显示。
由于ASP在服务器端运行,运行结果以HTML主页形式返回用户浏览器,因而ASP源程序不会泄密,增加了系统的安全保密性。此外,ASP是面向对象的脚本环境,用户可自行增加ActiveX组件来扩充其功能,拓展应用范围。
2.ASP页面的结构:
ASP的程序代码简单、通用,文件名由.asp结尾,ASP文件通常由四部分构成:
1)标准的HTML标记:所有的HTML标记均可使用。
2)ASP语法命令:位于<%%>标签内的ASP代码。
3)服务器端的include语句:可用#include语句调入其它ASP代码,增强了编程的灵活性。
4)脚本语言:ASP自带JScript和VBScript两种脚本语言,增加了ASP的编程功能,用户也可安装其它脚本语言,如Perl、Rexx等。
3.ASP的运行环境
目前ASP可运行在三种环境下。
1)WINDOWSNTserver4.0运行IIS3.0(InternetInformationServer)以上。
2)WINDOWSNTworkstation4.0运行PeerWebServer3.0以上。
3)WINDOWS95/98运行PWS(PersonalWebServer)。
其中以NTserver上的IIS功能最强,提供了对ASP的全面支持,是创建高速、稳定的ASP主页的最佳选择。
4.ASP的内建对象
ASP提供了六个内建对象,供用户直接调用:
1)Application对象:负责管理所有会话信息,可用来在指定的应用程序的所有用户之间共享信息。
2)Session对象:存贮特定用户的会话信息,只被该用户访问,当用户在不同WEB页面跳转时,Session中的变量在用户整个会话过程中一直保存。Session对象需cookie支持。
3)Request对象:从用户端取得信息传递给服务器,是ASP读取用户输入的主要方法。
4)Response对象:服务器将输出内容发送到用户端。
5)Server对象:提供对服务器有关方法和属性的访问。
6)ObjectContext对象:IIS4.0新增的对象,用来进行事务处理。此项功能需得到MTS(MicrosoftTranscationServer)管理的支持。
5.ASP的主要内置组件:
1)AdRotator组件:用来按指定计划在同一页上自动轮换显示广告,用于WWW上日益重要的广告服务。
2)BrowserCapabilities组件:确定访问WEB站点的用户浏览器的功能数据,包括类型、性能、版本等。
3)DatabaseAccess组件:提供ADO(ActiveXDataObjects)来访问支持ODBC的数据库。
4)FileAccess组件:提供对服务器端文件的读写功能。
5)ContentLinking组件:生成WEB页内容列表,并将各页顺序连接,用于制作导航条。
此外,还可安装Myinfo、Counters、ContentRotator、PageCount等组件,用户也可自行编制Actiive组件,以提高系统的实用性。
6.DatabaseAccess组件ADO
WWW上很重要的应用是访问WEB数据库,用ASP访问WEB数据库时,必须使用ADO组件,ADO是ASP内置的ActiveX服务器组件(ActiveXServerComponent),通过在WEB服务器上设置ODBC和OLEDB可连接多种数据库:如SYBASE、ORACLE、INFORMIX、SQLSERVER、ACCESS、VFP等,是对目前微软所支持的数据库进行操作的最有效和最简单直接的方法。
ADO组件主要提供了以下七个对象和四个集合来访问数据库。
1)Connection对象:建立与后台数据库的连接。
2)Command对象:执行SQL指令,访问数据库。
3)Parameters对象和Parameters集合:为Command对象提供数据和参数。
4)RecordSet对象:存放访问数据库后的数据信息,是最经常使用的对象。
5)Field对象和Field集合:提供对RecordSet中当前记录的各个字段进行访问的功能。
6)Property对象和Properties集合:提供有关信息,供Connection、Command、RecordSet、Field对象使用。
7)Error对象和Errors集合:提供访问数据库时的错误信息。
三.ASP访问数据库步骤
在ASP中,使用ADO组件访问后台数据库,可通过以下步骤进行:
1.定义数据源
在WEB服务器上打开“控制面板”,选中“ODBC”,在“系统DSN”下选“添加”,选定你希望的数据库种类、名称、位置等。本文定义“SQLSERVER”,数据源为“HT”,数据库名称为“HTDATA”,脚本语言采用Jscript。
2,使用ADO组件查询WEB数据库
1)调用Server.CreateObject方法取得“ADODB.Connection”的实例,再使用Open方法打开数据库:
conn=Server.CreateObject(“ADODB.Connection”)
conn.Open(“HT”)
2)指定要执行的SQL命令
连接数据库后,可对数据库操作,如查询,修改,删除等,这些都是通过SQL指令来完成的,如要在数据表signaltab中查询代码中含有“X”的记录
sqlStr=“select*fromsignaltabwherecodelike‘%X%’”
rs=conn.Execute(sqlStr)
3)使用RecordSet属性和方法,并显示结果
为了更精确地跟踪数据,要用RecordSet组件创建包含数据的游标,游标就是储存在内存中的数据。
rs=Server.CreateObject(“ADODB.RecordSet”)
rs.Open(sqlStr,conn,1,A)
注:A=1读取
A=3新增、修改、删除
在RecordSet组件中,常用的属性和方法有:
rs.Fields.Count:RecordSet对象的字段数。
rs(i).Name:第i个字段的名称,i为0至rs.Fields.Count-1
rs(i):第i个字段的数据,i为0至rs.Fields.Count-1
rs("字段名"):指定字段的数据。
rs.Record.Count:游标中的数据记录总数。
rs.EOF:是否最后一条记录。
rs.MoveFirst:指向第一条记录。
rs.MoveLast:指向最后一条记录。
rs.MovePrev:指向上一条记录。
rs.MoveNext:指向下一条记录。
rs.GetRows:将数据放入数组中。
rs.Properties.Count:ADO的ResultSet或Connection的属性个数。
rs.Properties(item).Name:ADO的ResultSet或Connection的名称。
rs.Properties:ADO的ResultSet或Connection的值。
rs.close():关闭连接。
4)关闭数据库
conn.close()
四.查询WEB数据库举例
下面这段示例程序是访问SQLSERVER数据库的signaltab表,表中有三个字段:code(代码字段,字符型,3位),class(分类字段,字符型,10位),memo(备注字段,字符型,20位)。程序中数据源DSN:HT、用户名:client、口令:passwd。
屏幕输入页面input.asp
<%@language=javascript%>
ASP(ActiveServerPages)是Microsoft于1996年11月推出的Web应用程序开发技术。微软声称设计出了一个完美的Active平台,在微软的文件中把ASP描述为:"一个服务器的脚本环境,在这里可以生成和运行动态的、交互的、高性能的Web服务器应用程序"。从这段描述我们可以看出,ASP既不是一种语言,也不是一种开发工具,而是一种技术框架,其主要功能是为生成动态的交互式的Web服务器应用程序提供一种功能强大的方法或技术。ASP的主要特性是能够把HTML、脚本、组件等有机地组合在一起,形成一个能够在服务器上运行的应用程序,并把按用户要求专门制作的标准HTML页面送给客户端浏览器。ASP属于ActiveX技术中的服务器端技术。与我们通常在客户端实现动态主页的技术如Javaapplet、ActiveXControl、VBScript、javascript等所不同的是,ASP中的命令脚本语句都是在服务器中解释执行,执行后的结果产生HTML页面并送到浏览器。由于ASP是在服务器端解释执行,开发者可以不必考虑浏览器是否支持ASP。同时,由于只是标准的HTML页面送到浏览器,在浏览器上看不到ASP程序,因此可以防止程序被窃取,保护了开发者的利益。
二、为什么用ASP
随着Internet的发展,静态Web站点的开发与维护变得越来越困难,一方面信息的不断增加和变化,使站点维护人员不得不经常修改他们的网页,特别是基于数据库驱动的Web站点更是如此;另一方面静态网页由于不能与浏览者进行有效交互,使人们感到越来越乏味,而不愿意再一次地进入同一站点。所以开发动态网页或动态内容成了越来越多的站点所追求目标。所谓动态内容是由每一个用户按照自己的需求发出请求而特殊制作的Web网页,例如访问某一网站的新用户得到的欢迎词与重新返回到该站点的用户得到的欢迎词是不同的。
三、ASP的特点
ASP具有学习快、设计快的特点,不需花许多时间即可学会和快速设计出WEB应用程序。
ASP的源程序码在服务器端执行,代码保密性好。
集成与HTML中,无需编译链接可直接执行;使用文本编辑器如记事本,即可设计。
与浏览器无关,用户端只要使用常规可执行HTML代码的浏览器。
ASP是面向对象的(Object_Oriented)
四、ASP与其它相关技术的比较
随着Internet的发展,静态Web站点的开发与维护变得越来越困难,一方面信息的不断增加和变化使站点维护人员不得不经常修改他们的网页,特别是基于数据库驱动的Web站点更是如此;另一方面静态网页由于不能与浏览者进行有效交互,使人们感到越来越乏味,而不愿意再一次地站点。所以开发动态网页或动态内容成了越来越多的站点所追求目标。
所谓动态内容是由每一个用户按照自己的需求发出请求而特殊制作的Web网页,例如访问某一网站的新用户得到的欢迎词与重新返回到该站点的用户得到的欢迎词是不同的。有许多技术可以实现动态内容,目前常用的主要有两种:CGI(公共网关接口)和ISAPI。
CGI是开发较早的技术,它可以很好地实现动态内容,但它有两个主要缺点。一是对每一个请求(请求一个页面)CGI都要产生一个新的进程,同一时刻发出的请求越多,服务器产生的进程也就越多。我们知道,产生一个进程是非常耗时的,而且需要用到大量的服务器RAM,所以其响应时间相对较长,特别是当进程多到某一数量后,服务器性能将显著下降。另一方面,CGI的主要编程语言是C语言,对大多数网页开发人员来说,要掌握和精通这些编程语言需要花很长的时间。
ISAPI针对CGI第一个缺点进行了改进,利用DLL(动态链接库)技术,以线程代替进程,提高了性能和速度,但要考虑线程的同步问题,而且开发步骤烦琐。
ASP除了提供CGI的所有功能外,还具有许多显著的优点。ASP运行在Web服务器的同一个进程中,可以更快、更有效地处理客户请求;ASP提供更方便、更简单的访问数据库的方法,使开
发基于数据库驱动的Web应用程序更加容易;ASP支持几乎所有的脚本语言,如VBScript、Jscript和Perl,其主要脚本语言VBScript是基于众多编程人员非常熟悉VisualBasic语言,所以ASP更容易被人们所接受。
五、ASP的工作过程
ASP技术直接建立于微软的Web服务器之中,所有微软的Web服务器都支持ASP,如WindowsNTInternetInformationServer(IIS),WindowsNTWorkstation以及Windows95PersonalWebServer。你不要担心浏览器是否能执行你的ASP程序,你的WEB服务器会自动把ASP程序码,解释为HTML格式的主页内容,再送到用户端的浏览器显示出来。如图1所。
六、用ASP实现用户登陆WEB数据库
在ASP中访问数据库,可采用ASP内置ActiveX服务器组件棗数据库访问组件,使用ActiveXDataObject(ActiveX数据对象,简称ADO)的技术。ADO通过在WEB服务器上设定ODBC,来建立与多种数据库的连接,其中包括SQLServer、Oracle、Foxpro等各种大、中、小型数据库。下面我们举例说明用ASP实现用户登陆WEB数据库的过程。
1.用户在客户机浏览器上输入一个URL地址并回车,请求一个页面。
例如yin/User_Login/default.htm。
2.服务器接受用户请求,调出相应页面(假设该页面含有一个表单)。
例如default.htm,其代码如下:
<html>
<head>
<metaname="GENERATOR"content="MicrosoftFrontPage3.0">
<title>系统登录</title>
</head>
<h2align="center">系统登录</h2><hr>
<formmethod="post"action=”user_login.asp”name=”form”>
<center>
请输入用户名:<inputname="username"type="text">
请输入口令:<inputtype="password"name="password"size="14">
<br>
<inputtype="submit"value="登录"name="submit">
<inputtype="reset"value="复位"name="reset">
</center></form></body>
</html>
当浏览器端填入要查询的用户名和口令并按下submit按钮时,它将用户名以username,口令以password的变量形式送到user_login.asp中。
[关键词]网站立项系统分析系统设计网站测试网站维护
一、引言
网络技术的不断成熟和发展,促进了基于网络技术的校园网站的发展。校园网站开发是一项很复杂的工作,我校根据学校实际,确定网站的定位和需求,从软件工程的角度出发,针对学校网站建设的特点和重点,整理出一套适合学校网站建设管理和控制的方法,以此来保证网站建设的高效率、高质量。
二、网站立项
校园网站建设,要成立一个专门的项目小组:学校领导、学校网络管理员、美术教师、各科室人员、计算机专业教师等8人~9人以及“计算机学会”社团学生代表5人组成,由网络管理员作为项目负责人负责对该项目的统一调度和安排。
三、网站设计开发过程
(一)系统分析阶段
建立一个网站,首要明确设计思想,编写一份详尽的需求说明书,这是网站建设成功的关键所在。
我校根据各方面的反馈意见进行认真的分析,对网站设计进行准确定位:学校网站规划要着重考虑教师和学生的需求;内容上要以学校整体宣传为主,同时也要为访问者提供其所关心的内容;内容要求及时更新;版面要求新颖有特色,同时还要增强网站的方便性、整体性和安全性。
(二)系统设计阶段
1.网站总体设计
网站设计有了一份详尽的需求说明书后,就可以根据需求说明书,对网站进行总体规划,给出一份网站总体建设方案。总体规划具体要明确网站需要实现的目的和目标;网站形象说明;网站的栏目版块和结构;网站内容的安排,相互链接关系;使用软件、硬件和技术分析说明;开发时间进度表;维护方案;制作费用;需要遵循的规则和标准有哪些等。
2.网站详细设计
总体设计阶段以比较抽象概括的方式提出解决问题的办法,具体设计阶段的任务就是把解决方法具体化、明确化,设计中应注意的问题有:
(1)网站设计的风格定位。网站要有自己的特色,设计中不要太多地考虑技术问题,而应该更多地考虑不断增加网站的内涵,要在能够动态反映学校情况的内容上下功夫。
(2)网站设计的整体性。网站设计,注意考虑网站的易维护性,技术上多采用CSS、模板等,对网站的整体风格进行定位,方便日常维护与更新。
(3)关键技术的研究及应用。网站设计中,怎样防黑,保护网站内容不被别人窃取、修改是网站建设必须考虑的技术性问题。本人主要从IIS、ASP和Access三方面来总结网站系统面临的常见的安全威胁及解决方法。
①集中管理ASP的目录,设置访问权限。在设置WEB站点时,将HTMI文件同ASP文件分开放置在不同的目录下,然后将HTML子目录设置为“读”;将ASP子目录设置为“执行”。
②对IIS中的特殊Web目录禁止匿名访问并限制IP地址。对IIS中的sample、scripts、iisadmin等web目录,通过各目录属性对话框中的“目录安全性”标签设置为禁止匿名访问并限制IP地址,并用NTFS的特性设置详细的安全权限,除了Administrator,其它帐号都应该设置为只读权限。
③防止Access数据库被下载。有效地防止数据库被下载的方法有:非常规命名法:为Access数据库文件取一个复杂的非常规名字,并把它放在几层目录下;使用ODBC数据源:在ASP程序设计中,如果有条件,应尽量使用ODBC数据源,不要把数据库名写在程序中。
④进行数据备份。运用FSO组件对Access数据库进行备份,以便在数据被破坏时进行快速恢复,尽可能多地挽回损失。
⑤对ASP页面进行加密。为了有效地防止ASP源代码泄露,可以对ASP页面进行加密。加密的方法一般有两种:一是使用组件技术将编程逻辑封装入DLL之中;二是使用微软的ScriptEncoder对ASP页面进行加密。
⑥后台用户注册验证。为了防止后台用户未经注册的用户绕过注册界面直接进入应用系统,我们采用Session对象进行注册验证:<%UserID=Request(“UserID”)
‘读取使用者所输入的用户名和密码
Password=Request(“Password”)
IfUserID<>“hrmis”OrPassword<>“password”Then
Response.Write“用户名错误!”
Response.End
EndIf
‘将Session对象设置为通过验证状态
Session(“Passed”)=True%>
进入应用程序后,首先进行验证:
<%‘如果未通过验证,返回Login.asp页面登陆状态
IfNotSession(“Passed”)ThenResponse.Redirect“Login.asp”
EndIf%>
⑦让学生参与网站设计。优秀学生参与设计,无论对丰富网站内容、提高学校网站的点击率还是扩大学校网站的影响都能起到相当大的作用。
(三)网站测试
有了网站的具体设计方案,各网站制作人员就可以全力进入开发阶段。尽量采用边制作边调试,即采用本机调试和上传服务器调试的方法,观察速度、兼容性、交互性等。
投入运行之前,需对网站需求分析、系统分析、设计规格说明和编码最终复审,还要对系统进行各种综合测试。测试结束后,制作有关文档存档,并写出一个校园网站使用说明文档。至此,网站项目建设完毕。
(四)网站的管理和更新
做好网站的管理与更新,是一个网站树立形象的根本、生存的根本。我校专门成立了安全组织机构,制定出适合我校的《校园网站管理办法》、《校园网站信息审核制度》、《校园网站异常情况案件报告制度》等规定,建立健全了各项安全管理制度。
四、结论
我校网站已经试运行一段时间,为学校的教师、学生和教学管理人员提供教学管理、教学研究、日常办公、信息交流等应用服务的平台,较好地满足了设计最初的需求。在整个设计网站的过程中,重视学校网站的“规划—设计—管理—发展”的规律,实现可持续性发展。
参考文献:
[1]田原.高职院校校园网站主页设计探讨[J].十堰职业技术学院学报,2007,(7).
[2]方照.立足校本,探索校园网建设之路[J].教育信息技术,2007,(12).
[3]田建勇.浅析学校网站的设计与建设[J].安顺师范高等专科学校学报,2006,(6).
[4]侯占伟,翟海霞.ASP代码厦网站安全的探讨[J].焦作大学学报,2005,(4).