论文——基于asp技术实现网络论坛
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录
一、绪论 (2)
(一)BBS的发展背景 (2)
(二)BBS对大学生学习生活的影响 (3)
二、系统介绍及基本原理 (4)
三、系统需求规划 (4)
四、系统的设计与实现 (7)
(一)基本功能设计 (7)
(二)扩展功能设计实现 (7)
(三)数据库设计 (9)
五、系统的特点与局限性 (9)
(一)特点 (10)
(二)局限性 (10)
六、总结 (11)
基于asp技术的网络论坛的设计与实现
摘要:BBS已经成为人们获取信息、发表言论的重要场所。
它由论坛注册用户所发表的大量主题组成。
近些年来,随着校园网建设的发展,大学校园网BBS也越来越火,因此建设一个好的BBS 显得越来越有必要了。
本文论述了开发一个简单的BBS系统所用到的关键技术和方法。
其中运用了ASP技术、ACCESS数据库等等, 对上述技术的实现方法进行了详细的讨论,介绍了在WEB 服务器上,利用ASP技术和ADO 等技术,实现了一个简单的BBS系统的设计与开发,并详细讨论了该系统的实现过程及其结构。
关键词:论坛基本功能扩展功能数据库 ASP
一、绪论
(一)BBS的发展背景
BBS是在1992年底随着国际互联网的开始流行而迅速发展起来的。
互联网的产生使得以前只能在本地访问的BBS可以被全世界随意访问, 这对大多数人来说是极具诱惑力的。
BBS 是一个有多人参加的讨论系统,在BBS上大家可以对一个共同感兴趣的问题进行讨论,自由地发表自己的意见与观点,并且能直接与其他的人进行沟通。
按照网站的性质以及服务对象来分,迄今有以下几种类型:一是校园BBS。
校园BBS作为主要的集中地,在BBS领域具有举足轻重的地位。
由于校园BBS的繁荣,吸引了很多的社会人士参与。
二是专业BBS。
一般是由各个著名的大公司组建,人们可以利用其交流自己对商品的看法,更为重要的是可以解决商品使用中的问题。
三是商业BBS。
它是由ISP建立的BBS站点,这类BBS站点各种信息比较多,内容相当丰富。
四是小型局域BBS。
一般是由个人或小型集体建立,为小范围信息交流服务。
五是业余BBS。
一般由BBS爱好者个人利用一些免费空间办的BBS,目的是为广大网友提供一个在某些专业上的交流场所。
六是新闻媒体BBS。
是由新闻媒体网站设立的,为广大网友提供对新闻信息进行评论、发表意见和观点的场所。
随着互联网事业的蓬
勃发展。
BBS,这个具有强大实时交互功能,信息交流的平台,使人们不再像电视观众、电台听众、报纸杂志读者一样只是被动地观看、收听、阅读,而是可以积极而及时地参与讨论,在了解他人观点意见的同时也可以发表自己的看法。
(二)BBS对大学生学习生活的影响
1.BBS提供了丰富的网络学习资源
论坛是一个经过学习者整理加工过的网络资源汇en集中心,从新闻、学习到娱乐、体育,从文字到视频、音频,BBS汇集了各种形式、内容的网络资源。
不少BBS都设有专门的NetResources(网络资源)板块;FTP 技术和BT技术的发展更是为BBS站内资源的更新、共享提供了方便。
如今,大部分大学的BBS论坛都有相应的FTP服务器,不少BBS还与网络新兴的BT技术、Blog(博客)技术等连接起来BBS水木清华站就有“水木Blog”的栏目。
2.BBS促进了协作学习
基于网络的论坛社区也是各种学习资源组合的场所,为学习者提供了学习环境。
作为一个学生参与论坛的网络活动可包括许多种学习的意义,在特定板块内,论坛参与者围绕某个话题或者问题,通过发表、回复话题、版面讨论、站内信件等方式进行互动讨论、相互探讨,形成了一种以学习者为中心的学习方式。
从教育网内人气排名前十名的论坛的网友参与的情况来看,在各大学习板块里,基本上每张帖子提出的问题都可以得到网友友好的、认真的回复解答,有着浓郁的协作探讨的学习气氛和良好的学习效果。
3.BBS提高了学生自主学习能力
网络学习的本质是一种自主学习,论坛提供了丰富的网络学习资源,使学习者能自主选择和控制学习地点、学习时间、学习方法和学习内容。
在论坛里,学生可以自主地围绕学习问题,通过发帖、回复的形式提出讨论,寻求解答帮助,提高了学习的积极性和自主学习的能力。
二、系统介绍及基本原理
网络论坛即BBS系统,是一个有多人参加的讨论系统,在BBS上大家可以对一个共同感兴趣的问题进行讨论,自由地发表自己的意见与观点,并且能直接与其他的人进行沟通。
要想开发出具有实用价值的动态Web应用程序,ASP脚本必须与基本COM标准的组件配合使用。
组件对象模型的微软公司体现用户的一种基于二进制的软件标准,与语言无关。
Visual Basic, Visual C++, Visual J++ 等都能创建COM组件,在不同的语言实现的组件之间,依据COM标准可以进行交互操作。
ASP提供了10个内臵组件。
每个组件中包括一个或多个对象。
在使用前,组件的对象需要被实例化。
ASP提高了6个内臵对象,这6个内臵对象可以被ASP脚本直接使用,不需要被实例化。
除了内臵组件和内臵对象,开发人员还可以自行制作实现特殊功能的组件。
三、系统需求规划
我们必须先规划好论坛有哪些功能,所以要有一张功能列表如表1
表1 论坛功能列表
首先,通过观察论坛所有功能需求,可以发现在这十六个功能需求中,如果按照不同事务分类,可以分为四类对象:板块、帖子、用户和论坛。
这四类对象,可以设计为四个数据实体,如果用数据库存储它们,即可以设计四个基本数据表。
如图1:
图1 基本数据表
板块类有浏览列表和管理两个方法,管理方法又可以分为创建、修改和删除3个子方法,如图2:
图2 板块对象的相关用例
帖子类有浏览、发帖、回帖、搜索和管理5个方法,浏览方法又可以分为列表和查看2个子方法,管理方法又可以分为编辑、删除、臵顶、转移、指定精华5个子方法,如图3:
图3 帖子对象的相关用例
用户类有注册、登陆和管理3个子方法,管理方法又分为添加、删除和设臵权限3个子方法,如图4:
图4 用户对象的相关用例
四、功能设计与实现
1.基本功能设计
(1)发帖。
论坛最初是为了相互讨论话题而诞生的,发表帖子就是表达自己的看法,与他人进行讨论,因此发帖是论坛首要的功能。
(2)浏览帖子。
发表了帖子,就要供他人浏览查看,与他人分享自己的想法和经验。
(3)回帖。
浏览了他人发表的帖子,想要发表自己的想法,参与讨论,就可以回复这个帖子。
2.扩展功能设计实现
除了基本功能之外,其他的论坛功能都是扩展功能。
(1)注册登陆。
原先的论坛在发帖回帖时,需要填写自己的笔名。
这样,经常发帖的人总是要重复填写笔名,比较麻烦。
因此,论坛扩展了用户注册登陆功能,参与论坛的注册自己的笔名以及个人信息,拥有论坛中的身份,发言时就不需要重复填写个人信息了。
(2)分板块浏览帖子。
随着论坛帖子数量的增多,讨论相同话题的帖子聚集在一起,引出了论坛新的扩展功能,即分板块浏览帖子,属于同一板块的帖子讨论同样的话题。
这样,就使得对某一话题感兴趣的用户不会被其他帖子干扰,也有利于相同兴趣的用户相互间讨论,不易跑题。
(3)编辑帖子。
发帖回帖的用户,如果需要修改更新自己发表的帖子内容,就引出了编辑帖子内容这个扩展功能,提供给用户更新自己发言的选择。
对于论坛管理员,可以编辑任何帖子的内容,也算是提供给管理员进行管理的选择。
(4)删除帖子。
如果用户发表了不符合论坛规则的帖子,则需要管理员删除这些帖子,这就引出了删除帖子的扩展功能。
(5)转移帖子。
论坛划分了板块,如果帖子内容不属于所在板块的关注话题,那么管理员可以选择将此帖移动到所属话题的板块中去,这就引出了移动帖子的扩展功能。
这个功能是随着板块功能的出现而出现的,板块将帖子进行了分组,从而提出了随板块移动帖子的要求。
(6)臵顶帖子。
帖子一般是根据发表以及回复时间到序排列的,这样先发的帖子就慢慢排到后面,管理员如果需要强调某些帖子重要,又必看性,就要打乱默认的排列顺序,将这些帖子放在列表的最前端,不再
按照时间进行顺序的变化,但是还要保证其他帖子按照时间变化顺序进行排列,这就引出了臵顶帖子的扩展功能。
(7)指定精华帖。
如果管理员认为某个帖子的内容非常好,可以打上标记,推荐给看帖的用户,这就引出了指定精华帖的扩展功能。
用户可以选择只看打上标记的精华帖。
(8)搜索帖子。
论坛中的帖子越来越多,用户需要从大量的帖子中找到自己需要的内容,这就引出了搜索帖子的扩展功能。
3.数据库设计
ACCESS 2000 的Manager管理工具是一个非常好用的可视化管理工具, ACCESS 2000中提供的datetime和text两种字段类型,其中datetime 是用来保存日期和时间数据的,text 是用来保存不定长度的备注说明内容的, 有了这两个数据类型, 应用系统中就不用再为输出格式和限制字符串长度而增加额外代码了。
之所以这样设计数据表间关系,主要是考虑论坛中各个对象得相互关系,帖子属于板块,回复帖从属于主题帖,帖子的作者属于用户,因此板块、主题帖、回复帖是一层层的从属依赖关系,帖子的作者必须是论坛的用户,帖子不能脱离板块、用户而单独存在。
五、系统的特点与局限性
(一)特点
本系统最大的特点就是结构简单,界面清晰、简洁,一目了然。
它不同于网络上的其他论坛的地方在于,主界面只显示每个板块的名称,板块描述,建立时间以及版主,而不细列出每个板块里的主题情况,这
样就使原本繁杂的主界面大大简化,层层分明,给人一种很干净清新的感觉,不会象其他网络论坛一样使人眼花缭乱,不知从何处进入板块才好。
本系统还有一个特点就是可扩展性非常强。
由于采用的是原型法的开发模式,一开始只是对论坛的基本功能,即浏览帖子、发帖和回帖这三个功能进行了设计,而后来的注册登陆、分板块浏览帖子、编辑帖子、删除帖子、转移帖子、臵顶帖子、指定精华帖、搜索帖子、管理板块、设臵参数、管理用户以及文件的上传和下载等功能则是在后来的开发中陆续添加进去的。
(二)局限性
事物总是一分为二的,本论坛系统的优点也就导致了它的局限性,由于界面简洁,每个板块没有列出所包含的主题,用户必须点击进入才能看到该板块中的所有主题,然后点击回复,这样就加大了用户的工作量,令他们的操作有些许累赘。
第二,用户在发帖之后,并不能马上对自己发的帖子进行修改或删除,要想进行这些操作,必须进入管理登录界面,这样使得登录过的用户必须又要再登录一遍,又一次增加了用户操作的复杂性。
这一点还有待改进。
第三,由于最初的设计没有考虑到头衔的显示,因此在对用户进行管理的时候,头衔的管理和用户其他信息及权限的管理是分开的,这样就导致了管理员的工作量有所增加。
最后,由于时间的关系,本论坛没有实现系统自动对发帖的用户增加积分的功能,这是本论坛的一大瑕疵。
六、总结
为期多月的毕业设计已经接近尾声了,本系统的整个实施过程中,遇到了很多很多的困难。
看着自己的设计从无到有,从最初的雏形到如今的完整系统,虽说算不上完善,但也基本符合需求,这不仅仅是自己这几个月来辛勤劳动的结晶,更是对自己学习成果的一个检验。
在最初选择ASP和ACCESS 2000作为开发工具的时候,本人考虑到ASP的强大功能和ACCESS良好的可移植性很适合做Web开发,但是也考虑到本人以前从来没有使用过这两种工具来开发项目,也就是说对于这两种工具的使用我没有任何的经验,这无形之中就增加了本人做毕业设计的难度,本人必须从头开始学习asp和ACCESS。
本人的感觉是ASP跟JAVA很相似,而ACCESS上手很难,但是一旦学懂了,就会发现它真的很有用,并且越来越觉得所掌握的知识远远不够用。
在本人开发的整个过程中本人在不断的学习,一边学一边做,很多时候在一个问题上要花好几个小时甚至一两天,当本人好不容易将这个问题解决时才发现其实这是个很小的问题,也许只是由于不了解它的一个对象或者时一个函数的功能。
但是,每当本人费尽心思解决了一个关键问题时,那种成功的喜悦和茅塞顿开的感觉是没有办法来形容的,它不仅让我感受到自己知识的浅薄也会激励我更加努力的去学习更多的东西,好把本人的设计做的更完善更好,因为我根本就不会知道自己在接下来的设计中又会遇到怎样的挫折。
从本人的毕业设计上很容易看出来这个系统的稚嫩,很多地方的需求没有考虑到,很多功能实现的也很不完善,这可能跟我平时很少上网逛论坛有很大的关系。
虽说在老师的指导下已经改进了很多,一些我觉得不必要而实际上很必要的功能虽然增加进去了,但是这个系统已经少
了一种一气呵成的感觉,很多地方都能够看出需求变更的影子。
这也让本人更加体会到了一个良好的软件需求对一个软件系统来说是多么的重要了。
毕业设计将本人学习的知识进行了一次综合,本人必须将以前所学融会贯通,且灵活运用并且更加深入地研究学习之后才能完成本人的设计,这也正是学习的真谛,希望本人能够成功地通过这次检验,成为一个优秀的毕业生。
参考文献
[1] 钟玉,阳昊:浅谈大学校园网BBS,益阳师专学报,2008年11月
[2] 刘冰:从BBS 看校园网络文化对大学生学习的影响,现代远程教育研究,2010年 2期
[3] 邵斐:基于Web的BBS系统的建立,金陵职业大学学报,2007年3月
[4] 李勇平,陈峰波:ASP基础教程,清华大学出版社,2009年2月
[5] 胡百敬姚巧玫:ACCESS 2003数据库开发详解,电子工业出版社,2008年3月
[6] 万峰科技:ASP网站开发,电子工业出版社,2008年8月。