是当今市场上最受关注的Web服务器之一。新推出的IIS6.0版本增强了系统安全性,具有服务器端脚本开发调试,内容管理和站点分析,崩溃防护,内置JAVA虚拟机及全面支持ASP等强大功能。
IIS与ASP的结合
在过去,客户机/服务器结构的设计与Web的相关技术几乎处于平行线上,两者相互独立并无法作出集成性的设计。现在我们利用IIS+ASP构成三层式Web结构(如图2.1所示)的中间一层,将客户机/服务器结构与Web密切结合,完成前后端两者的集成输出功能,使得Web站点的开发更方便,实现的功能更强大。
利用IIS+ASP技术来集成Web前后端所带来的强大效益可归结为以下几个方面:
减少构建和维护成本
加快联机过程
应用软件集中在服务器端开发管理
前端可使用任何浏览器(IE、Netscape.....)
后端可存取任何数据库(SQL、Access.....)
可使用任何脚本语言开发(VBScript、JavaScript、PERL.....)
3.5.3利用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)
/执行插入操作
五、关闭数据对象和链接对象
在使用了ADO对象之后要关闭它,因为它使用了一定的服务器资源。通过调用方法close实现关闭,然后再释放它。
RecordSet.close
SetRecordSet=Nothing
/关闭创建的数据对象
mConn.close
SetmConn=Nothing
/关闭创建的链接对象
4数据库连接函数
为什么要将本部分列出来呢?因为在整个博客系统的开发过程中,数据库连接是必不可少的,是公用的,我们可以把这一部分先拿出来,单独做成一个函数,在需要的时候只需调用就可以了,而不用每次都去写连接数据库的程序,这种做法叫做复用。
本系统使用的是Access数据库,在ASP中同数据打交道的主要是ADO,对数据进行操作处理,要让ADO对像能够存取数据库,最重要的东西就是OLEDB及ODBC驱动程序。任何一种数据库,必须具备对应的驱动程序,ADO对象才能存取。
本系统连接Access数据库使用的是微软的OLEDB机制,博客系统数据库连接的关键代码如下:
DimDb
'access数据库连接参数:
Db="data/oblog2.mdb"
ConnStr="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="&Server.MapPath(db)
else
'sql数据库连接参数:数据库名、用户密码、用户名、连接名(本地用local,外地用IP)
DimSqlDatabaseName,SqlPassword,SqlUsername,SqlLocalName
SqlDatabaseName="oblog"
SqlPassword="oblog"
SqlUsername="oblog"
SqlLocalName="(local)"
ConnStr="Provider=Sqloledb;UserID="&SqlUsername&";Password="&SqlPassword&";InitialCatalog="&SqlDatabaseName&";DataSource="&SqlLocalName&";"
第四行为ConnStr赋值。这是连接数据库中很关键的一步,这里声明的是OLEDB连接数据库的方式。
再看DataSource部分,它的后面跟的就是数据库文件所在的路径。这里说明一下Server.MapPath函数,它是ASP内置的Server对象的一个函数,用来获得网站目录下文件的绝对路径。
一般来说,凡是涉及到具体目录的地方,都不要直接使用目录名,而用Server.MapPath函数来代替。
使用上面的驱动程序,只要保证数据库路径的正确就不会出现问题。
5详细设计
根据对系统所需实现功能的分析和系统结构设计,现将对系统进行详细设计。但由于系统模块的代码较多,现就系统的几个重要模块的部分设计在以下的几章中进行举例,其中在第五章中将介绍注册登陆系统中的部分模块,而在第六章中会介绍博客管理系统中的部分模块。
5.1系统登录模块模块简介
该模块是博客系统中的一个重要组成,用于完成对用户权限的判定。当启动系统时,系统即将用户视为一般用户,因此一般用户直接能进行博客浏览和博客阅读。注册用户需提交密码和用户名登陆系统,之后不仅可以完成以上功能,还能建立自己的博客并进行管理;倘若忘记了密码,可以进行密码查询,此时系统会根据用户填写的用户名查找密码的问题以提示用户,用户输入正确密码后可修改密码。一般用户若想注册,可以进行资料登记,资料提交后系统审核通过后系统会提醒你注册成功,通过首页登陆即可进入自己的博客管理页面。管理员(无论是系统管理员,还是博客管理员都一样)需提交用户名和密码,系统管理员还需输入系统随机产生的校验码进行登陆,之后进入管理页面。
5.2模块体系结构
为实现上述功能,将该模块分为了三个子模块:新用户注册子模块、注册用户登陆子模块、系统管理员登陆子模块。各模块之间关系如下:
5.3运行图
图5-2登陆系统运行图
5.4设计说明
5.4.1新用户注册子模块
用户注册,首先要检查的就是用户填写的信息,其中包括:
上一篇:
asp医药连锁店管理系统ASP+源代码+可执行程序+论文(论文和程序)
下一篇:
密切医患护患关系,开展健康教育