1、山西工商职业学院论文(设计) 第 1 页目 录摘 要 .2第一章引 言 .2第二章、ASP 技术综述 .32.1 ASP 的产生 .32.2 ASP 与 IIS.42.2.1 IIS 简介 .42.2.2 IIS 与 ASP 的结合 .42.3 ASP 的内部特点 2.3.1 ASP 内部 6 大对象 .52.3.2 Global 文件 .62.4 利用 ADO 访 问数据库 .62.5 ASP 与 CGI 的比较 .8第三章、网上贴吧系统分析及实现 .93.1 网上贴吧系统说明 .93.1.1 分析需求,确定思路 .103.1.2 设计功能 .113.1.3 划分功能模块 .123.2 数据
2、库设计 .143.2.1 数据库概念结构设计 .14各表之间的联系 .153.2.2 数据库逻辑结构设计 .163.2.3 连接数据库 .203.3 主要界面及相关代码分析 .223.3.1 用户登陆 .223.3.2 用户注册 .253.3.3 版面模块 .353.3.4 帖子模块 .383.3.5 管理人员模块 .44第四章、网上贴吧系统运行环境 .44第五章、结论 .45第六章、致 谢 .45第七章、参 考文献 .45山西工商职业学院论文(设计) 第 2 页摘 要20 世纪末,随着计算机科学的发展,数据库技术在 Internet 中的应用越来越广泛,为广大网络用户提供了更加周到和人性化的
3、服务。个性化已逐渐成为当今 Web 应用的潮流。本文研究了一种基于数据关联规则网上贴吧系统,贴吧也称为 BBS,BBS 是BULLETIN BOARD SYSTEM 的缩写,意即电子公告板,一种在 INTERNET 上常用的用于信息服务的 web 系统,他的主要服务是用来帮助浏览者相互沟通,吸引用户、服务用户的。Bbs 起源于 20 世纪 80 年代初。最初只是用于公布公告信息和讨论问题的在线交流平台;后来随着网络的普及,贴吧的功能越来越丰富。受到广大网民的欢迎。因此商业网站对贴吧重视起来,纷纷在自己的网站上开辟贴吧,作为与网民交流的园地,同时在线技术和在线服务也在贴吧开展起来。本文中所做的主
4、要工作如下:(1)介绍了个性化页面的背景及 Win2000+IIS+ASP 系统的一般原理;(2)阐述整个个性化页面的系统结构及工作原理;分析了系统实现中的特殊性、难点和重点。(3)设计实现用户管理、帖子管理、版面管理、数据库管理、浏览和查找、短消息功能等 ASP 页面 。(4)分析并解决实现中的若干技术问题。(5)建立完整的网上贴吧,进行测试并分析结果。【关键词】网上贴吧、ASP、ACCESS第一章、引 言Internet 是目前世界上最大的计算机互联网络,它遍布全球,将世界各地各种规模的网络连接成一个整体。作为 Internet 上一种先进的,易于被人们所接受的信息检索手段,World W
5、ide Web(简称 WWW)发展十分迅速,成为目前世界上最大的信息资源宝库。据估计,目前 Internet 上已有上百万个 Web 站点,其内容范围跨越了教育科研、文化事业、金融、商业、新闻出版、娱乐、体育等各个领域,其用户群十分庞大,因此,建设一个好的 Web 站点对于一个机构的发展十分重要。近年来,随着网络用户要求的不断提高及计算机科学的迅速发展,特别是数据库技术在 Internet 中的广泛应用,Web站点向用户提供的服务将越来越丰富,越来越人性化。我们发现这样一个事实,一个用户在访问一个网站时一般来讲只对该网站的部分内容感性趣,而且这种兴趣会持续一段时间。这点启发了我们,如果能根据用
6、户的喜好为不同的用户显示其个性化的页面,即着重显示该用户感兴趣的内容,将为用户节约大量的检索时间,而且这样的网页显然是更具有吸引力的。一些站点已经在这方面作出了一定的尝试,通常采用的方法是,在用户登陆时为其提供一系列的选项,使用户能够对站山西工商职业学院论文(设计) 第 3 页点进行一些自主的设置。这样做能够使站点呈现一定程度的个性化,但是对用户来讲,还是比较烦琐,而且在用户了解一个站点前让其对站点进行设置,其结果未免有些粗糙。于是我们构想了这样一种方案,对用户登陆后的动作进行跟踪,分析,发掘用户点击的规律,即用户先后点击的关联规则,这样,在用户点击一个主题(链接)之后,系统能够自动生成一页面
7、,其中包含了该主题下用户经常关注的内容(若干链接),这样便在无须用户作出任何额外工作的情况下实现了为用户量身订做的个性化页面。 要实现这样的功能,离不开后台数据库的支持。用户验证信息,收集到的用户点击信息,主题层次信息,分析得出的关联规则表等大量的数据都由数据库管理系统管理。本文中数据库服务器端采用了 Microsoft Access 数据库作为ODBC(Open DataBase Connectivity )数据源,并以先进的ADO(ActiveX Data Objects)技术进行数据库存取等操作,使 Web 与数据库紧密联系起来。整个个性化页面生成系统主要由使用 Dreamweaver_
8、MX 开发的关联规则采掘系统和利用 IIS+ASP 技术实现的个性化 Web 页面生成器两部分组成。关联规则采掘系统对数据库中的历史记录进行分析,产生用户关联规则表;页面生成器则负责记录用户行为和根据关联规则表动态生成用户个性化 Web 页面。二者通过数据库服务器和 Web 服务器连接。本文作者主要完成 Web 服务器端的用户管理、帖子管理、版面管理、数据库管理、浏览和查找、短消息功能等设计、实现与完善以及整个实验网站的组织建立和测试工作。第二章、ASP 技术综述2.1 ASP 的产生近年来随着 Internet 技术的飞速发展及用户需求的不断升级,Web 页面技术也不断的推陈出新,使得 We
9、b 站点的功能越来越强大,能够提供的服务种类越来越繁多。从HTML、Client Script 到 CGI,从 JAVA 的诞生到 ActiveX, Web 页面设计人员不断受到冲击,微软公司在总结了以往技术,重新思考 Web 页面设计的真正需要后,推出了Active Server Pages (ASP),一种用以取代 CGI(Common Gateway Interface,通用网关接口)的技术。简单讲,ASP 是位于服务器端的脚本运行环境,通过这种环境,用户可以创建和运行动态的交互式 Web 服务器应用程序,如交互式的动态网页,包括使用HTML 表单收集和处理信息,上传与下载等等。更重要的
10、是,ASP 使用的 ActiveX 技术基于开放设计环境,用户可以自己定义和制作组件加入其中,使自己的动态网页几乎具有无限的扩充能力,这是传统的 Web 编写工具所远远不及的地方。使用 ASP 还有个好处,就在于 ASP 可利用 ADO(Active Data Object,微软的一种新的数据访问模型)方便快捷地访问数据库,从而使得开发基于 WWW 的应用系统成为可能,这也是本文选择 ASP 作为开发工具最重要的原因之一。山西工商职业学院论文(设计) 第 4 页2.2 ASP 与 IIS2.2.1 IIS 简介Web 服务器是 Web 应用程序的心脏。IIS(Internet Informat
11、ion Server)是微软推出的 Windows NT Option Pack 的主要成员,作为 Win2000server 的扩展,自推出以来已经有了很大发展,其体系结构是当今市场上最受关注的 Web 服务器之一。新推出的IIS4.0 版本增强了系统安全性,具有服务器端脚本开发调试,内容管理和站点分析,崩溃防护,内置 JAVA 虚拟机及全面支持 ASP 等强大功能。2.2.2 IIS 与 ASP 的结合在过去,客户机/服务器结构的设计与 Web 的相关技术几乎处于平行线上,两者相互独立并无法作出集成性的设计。现在我们利用 IIS+ASP 构成三层式 Web 结构(如图 2.1所示)的中间一
12、层,将客户机/服务器结构与 Web 密切结合,完成前后端两者的集成输出功能,使得 Web 站点的开发更方便,实现的功能更强大。利用 IIS+ASP 技术来集成 Web 前后端所带来的强大效益可归结为以下几个方面:1 减少构建和维护成本 2 加快联机过程 3 应用软件集中在服务器端开发管理 4 前端可使用任何5 后端可存取任何数据库 (SQL、Access.) 6 可使用任何脚本语开发 (VBScript、JavaScript、PERL.)浏览器(IE、Netscape.) 山西工商职业学院论文(设计) 第 5 页2.3 ASP 的内部特点2.3.1 ASP 内部 6 大对象ASP 提供了 6
13、个功能强大的内部对象,每个对象具有各自的属性(Property)、方法(Method),有的还拥有数据集合(Collection)与事件( Event),它们共同完成Web 中的一些重要工作。这 6 个对象及其功能描述如表 2.1 所示。表 2.1 ASP 内部 6 大对象及其功能对象名称 功能描述Request 从客户端取得信息Response 将信息送给客户端Server 提供一些 Web 服务器工具Session 储存在一个 Session 内的用户信息,该信息仅可被该用户访问Application 在一个 ASP-Application 中让不同的客户端共享信息ObjectContex
14、t 配合 Microsoft Transaction 服务器进行分布式事务处理合理地运用这些对象可以使原本复杂,烦琐的工作变得简捷而条理清晰。我们可以用以下的语法直接使用这些对象:对象/属性 /方法/数据集合2.3.2 Global 文件每一个以 Active Server Pages 为基础的应用程序都拥有一个 Global.asa 文件(ASA 后缀名其实是 Active Server Application 的缩写),它位于每一个应用程序的山西工商职业学院论文(设计) 第 6 页基点目录之下。当 Active Server Pages 做下面两个动作时,Server 便会去读Global
15、.asa 文件:1.Web Server 启动之后,一个应用程序目录中任一个 ASP 文件被提出第一个 HTTP请求(Request)时。2.不具有任何 Session 的客户端向 Server 请求一个 ASP 文件时。前面已经提到 Application 和 Session 这两个 ASP 的内部对象。Application 对象内的信息供所有正在执行该应用程序的用户分享,它创建于 Web Server 启动后一个应用程序中任一 ASP 文件被提出第一个 HTTP 请求时,结束于 Server 端停止运行。而Session 对象仅属于一位用户,维持一个用户端的信息,其他用户无法访问,它创建
16、于一个不具有 Session 的用户向 Server 请求一个 ASP 文件时,结束于该 Session 到期(即用户端超过某时间段没有向 Server 提出要求或刷新 Web 页面)或 Abandon 语句的调用。可见,Global.asa 文件的调用与 Application 与 Session 这两个对象密切相关。事实上我们通常在 Global。asa 文件中写入以下内容:1 Application 或 Session 的开始事件(Start-event)。2 Application 或 Session 的结束事件 (End-event)。这样,在一个 Application 或 Ses
17、sion 对象被创建或结束时,系统会自动完成Global.asa 文件中写入的相应事件。值得注意的是,如果一个 Application 与一个Session 同时开始,Active Server Pages 会先处理 Application 的开始事件,而如果一个 Application 与一个 Session 同时结束,Active Server Pages 则会先处理Session 的结束事件。2.4 利用 ADO 访问数据库ADO(ActiveX Data Objects)是一种操作 Microsoft 所支持的数据库的新技术。在 ASP 中,ADO 可以看作是一个服务器组件(Serve
18、r Component),更简单点说,是一系列的对象,应用这些功能强大的对象,即可轻松完成对数据库复杂的操作。本文中个性化页面的实现便大量地用到了 ADO 技术。具体的操作步骤可以归纳为以下几步:1创建数据库源名(DSN)2创建数据库链接(Connection)3创建数据对象4操作数据库5关闭数据对象和链接每一步的作法如下:一、创建数据源名DSN(Date Source Name)即数据源名称。我们知道,ODBC 是一种访问数据库的方法,只要系统中有相应的 ODBC 驱动程序,任何程序就可以通过 ODBC 操纵驱动程序的数据库。比如我们系统中有 Access 的 ODBC 驱动程序,那么即使我
19、们没有 Access 软件,也可以在我们的程序中对一个 Access 的 MDB 数据库加、删、改记录。而且我们根本不用知道这个数据库是放在哪里的。我们只要写出 SQL 语句,ODBC 驱动程序就会帮我们做一切事情。我们在给 ODBC 驱动程序传 SQL 指令时,即是用 DSN 来告诉它到底操作的是哪一个数据库。如果数据库的平台变了,比如我们改用了 SQL Server 的数据库,只要其中表的结构没变,我们就不用改写我们的程序,只要重新在系统中配置 DSN 就行了。由此山西工商职业学院论文(设计) 第 7 页可见,DSN 是应用程序和数据库之间的桥梁。二、创建数据库链接(Connection)
20、链接用以保持一些关于正在访问的数据的一些状态信息,以及链接者信息。ASP 文件中如果要访问数据,必须首先创建与数据库的链接,其语法如下:set Conn=Server.createObject(“ADODB.CONNECTION”)这条语句创建了链接对象 Conn,接下来:Connstr=“Driver=Microsoft Access Driver (*.mdb);dbq=“ & Server.MapPath(db)conn.Open connstr这条语句打开链接,用到了 DSN,本例为“connstr”。以上两个步骤缺一不可,因为链接对象的创建与打开是两回事,只有打开了才真正可以使用。三
21、、创建数据对象(Record Set)ADO 中的数据对象通常保存的是查询结果。Record Set 是 ADO 中最复杂的对象,有许多属性和方法。Record Set 保存的是一行行的记录,并标有一个当前记录。以下是创建方法:Set Record Set=Conn.Execute(sqtStr)这条语句创建并打开了对象 Record Set,其中 Conn 是先前创建的链接对象,sqtStr 是一个字串,代表一条标准的 SQL 语句。例如:sqtStr=“SELECT * FROM shop_books” Set Record Set=Conn.Execute(sqtStr)这条语句执行后,
22、对象 Record Set 中就保存了表 tab1 中的所有记录。四、操作数据库我们通过调用链接对象的 Execute 方法来将查询结果返回给一个数据对象或进行插入、删除、修改等操作。例如:sqtStr =“INSERT INTO tab1 VALUES(1,2)”Conn.Execute(sqtStr)/执行插入操作sqtStr =“Delete from tab1 where a=b”/执行删除操作sqtStr =“update tab set a=b,c=d”/执行修改操作五、关闭数据对象和链接对象在使用了 ADO 对象之后要关闭它,因为它使用了一定的服务器资源。通过调用方法close
23、实现关闭,然后再释放它。Record Set.closeSet Record Set=Nothing/关闭创建的数据对象Conn.close山西工商职业学院论文(设计) 第 8 页Set Conn=Nothing/关闭创建的链接对象2.5 ASP 与 CGI 的比较CGI(Common Gateway Interface,通用网关接口)也是 Internet 上一种功能强大的Web 页面技术,其工作方式有别于 ASP。我们现对二者进行比较。Active Server Pages 开发 Web 应用程序的特点:1 完全嵌入 HTML,与 HTML、Script 语言完美结合。2 无须手动编译和链
24、接程序。3 面向对象,并可扩展 ActiveX Server 组件功能。4 使用脚本语言(JavaScript、VBScript 或 PERL)编写。5 存取数据库轻松容易(使用 ADO 组件)。6 可使用任何语言编写自己的 ActiveX Server 组件。7 无浏览器兼容问题。8 程序代码隐藏,客户端仅能看到 ASP 输出的 HTML 文件。9 缩短 Web 开发时间。相比之下,使用 CGI 开发 Web 应用程序具有以下缺点:1 不易与 HTML 文件集成。2 须使用其他较复杂的语言来开发 CGI 程序。3 程序开发时间较长。4 存取数据库不容易。5 每个 CGI 程序被不同用户执行时
25、都得重新执行一次,并占去 Server 的一个端口(Port),降低 Server 效率。可见,ASP 在数据库访问、与 HTML 的集成、提高服务器的效率等诸多方面都优于CGI,更适应 Web 应用程序开发的需要,因此本文选择了 ASP 作为个性化页面生成器的开发工具。第三章、网上贴吧系统分析及实现3.1 网上贴吧系统说明在开始制作之前,要明确贴吧能做些什么事情,,也就是所谓的需求。所以必须把需求做清楚,然后才能进行设计。其实在贴吧里大家最熟悉的就是用户浏览贴吧已有的内容,针对别人的主题展开讨论,也可以发表自己的观点供大家品评。同时为了防止用户发布一些不健康不合法的内容需要有管理人员来对这些
26、内容进行删除修改,在扩展一点,若用户想在贴吧发布信息,不允许他再来发布非法内容。这样需要管理员对用户和贴吧的内容都要进行管理。我们要做一个多版面的贴吧。在这里用户可以注册,浏览贴吧版面和帖子,发布自己的帖子,也可以相互联系。管理人员可以设置贴吧的系统参数,管理注册用户和版山西工商职业学院论文(设计) 第 9 页面。当用户来到贴吧可以看到版面列表。通过版面可以看到相关的帖子。如果需要进一步的功能,就需要用户注册。用户注册以后,可以发表自己的帖子或者回复别人的主题,也可以修改自己的帖子,如果发帖数量很多,会给用户一定的积分。用户也可以升级为版主,可以删除别人的帖子,将帖子置顶,设为精华等。用户还可
27、以修改自己的信息,查看其他用户公开的注册信息。管理人员可以管理版面、帖子、用户、设置系统参数。3.1.1 分析需求,确定思路浏览者注册登录浏览板块 浏览帖子 回复用户 发帖管理用户 管理帖子搜索管理员管理版块首先来做名词分析。大家可能觉得奇怪,这不是阅读理解,为什么要做这个?分析需求就是要理解需求,得出重点。首先要做的就是找出这个贴吧要针对哪些进行操作,对需求中的名词进行一次筛选,得出一个简洁的列表。下边这个表是表示各个对象间关联的,关联是单向的,是指左侧对象对上方对象的活动。没有关联我们就用 X,如果两者只有单向关联,那么另一个对象反关联时我们用对号表示。根据需求,得出各个对象间的关联表。如
28、表 3.1 所示表 3.1 个对象间的关联表用户 版面 帖子 管理人员 系统参数用户 注册】修改浏览 浏览发布 X山西工商职业学院论文(设计) 第 10 页浏览联系修改删除特殊操作版面 X X X帖子 X X X管理人员 删除授权添加删除修改添加删除修改X 设置系统参数 X X X3.1.2 设计功能有了表 3.1 就可以进行十实质性的工作了。现在就来设计功能。首先从用户开始,在表3.1 中用户关联的对象是自身,版面,帖子,分别根据用户与这些对象的联系给出一个明确的菜单,见表 3.2表 3.2 用户功能列表序号 功能名称 说明1 用户注册 用户在贴吧填写必要的信息后就可以注册成为注册用户,用户
29、登录网站可以修改自己的用户信息2 用户登录 用户在贴吧注册后,可以使用用户名密码在贴吧登录3 浏览其他用户信息 用户注册后可以查看其他用户信息4 浏览版面 用户可以看到以列表形 class.asp 式展现的版面信息5 浏览帖子 用户可以以列表形式浏览帖子主题及帖子的全部内容6 发布删除修改帖子 用户在登录后可以发布帖子,修改自己的帖子。如果被赋予版主权限还可以修改其他用户的帖子7 与其他用户联系 在用户注册时要求用户填写电子邮件地址,那么其他用户可以利用电子邮件与其联系8 对帖子特殊操作接下来的版面,帖子都没有和其他对象的关联,他们在贴吧属于被动的对象,是被其他对象所操作的。因此针对他们的功能主要是由其他对象产生,例如浏览版面就属于用户的功能。管理人员是贴吧的一个特殊群体,他们的主要工作的是保证贴吧的正常运转,他们可以和所有对象产生联系,因此他们的功能也很丰富。表 3.3 列出了管理人员的功能。表 3.3 管理人员功能列表序号 功能名称 说明
Copyright © 2018-2021 Wenke99.com All rights reserved
工信部备案号:浙ICP备20026746号-2
公安局备案号:浙公网安备33038302330469号
本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。