最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

BBS论坛的设计与实现

来源:动视网 责编:小OO 时间:2025-09-28 00:45:25
文档

BBS论坛的设计与实现

毕业设计(论文)专业班级学生姓名学号课题BBS论坛的设计与实现指导教师摘要在当代,英特网已经成为人们快速获取、发布和传递信息的重要渠道,它在人们日常、经济、生活等各个方面发挥着重要的作用。Internet上发布信息主要是通过网站来实现的,获取信息也是要在Internet中按照一定的检索方式将所需要的信息从网站上下载下来。它已成为、企事业单位信息化建设中的重要组成部分,从而倍受人们的重视,因此网站建设在Internet应用上的地位显而易见。构建论坛网站是为加强老师同学们之间的联系,通过网站,
推荐度:
导读毕业设计(论文)专业班级学生姓名学号课题BBS论坛的设计与实现指导教师摘要在当代,英特网已经成为人们快速获取、发布和传递信息的重要渠道,它在人们日常、经济、生活等各个方面发挥着重要的作用。Internet上发布信息主要是通过网站来实现的,获取信息也是要在Internet中按照一定的检索方式将所需要的信息从网站上下载下来。它已成为、企事业单位信息化建设中的重要组成部分,从而倍受人们的重视,因此网站建设在Internet应用上的地位显而易见。构建论坛网站是为加强老师同学们之间的联系,通过网站,
 

  毕 业 设 计 (论 文)

专    业                           

班    级                           

学生姓名                           

学    号                           

课    题        BBS论坛的设计与实现         

指导教师                           

     

摘 要

在当代,英特网已经成为人们快速获取、发布和传递信息的重要渠道,它在人们日常、经济、生活等各个方面发挥着重要的作用。Internet上发布信息主要是通过网站来实现的,获取信息也是要在Internet 中按照一定的检索方式将所需要的信息从网站上下载下来。它已成为、企事业单位信息化建设中的重要组成部分,从而倍受人们的重视,因此网站建设在Internet应用上的地位显而易见。构建论坛网站是为加强老师同学们之间的联系,通过网站,全面宣传,展示学校风采、优点与特色,发布学校的活动和重大安排。作为近年来日益普及和访问量日趋增大的BBS论坛论坛,正越来越被大家所接受。

随着BBS论坛的发展,近年来BBS论坛已成为大学内相互沟通与学习交流的常用工具。教学过程是一个知识传递、师生信息互动的过程,而由于BBS论坛具有实时性、开放性和灵活的交互性等特点,因此BBS论坛已成为很好的师生、生生交互和沟通的途径。本文是基于ASP.NET开发的BBS论坛论坛系统,SQL SERVER作为数据库服务器。其中,着重研究ADO与ADO.NET、ASP与ASP.NET,明确了采用ADO.NET和ASP.NET开发高性能要求的Web应用是可取的、先进的。接着文章将介绍论坛用户验证、数据库设计及MD5数据加密、分页技术等,让大家进一步了解这个系统。

关键字:BBS论坛;ADO.NET;ASP.NET;

abstract

Today , with the rapidly development  , the Internet become the  channel that people could  have access  to ,publish and disseminate important information ,  which plays an important role in political, economic, and other aspects of life .Internet to publish information is mainly achieved through the website, access to information is download from the site down which could though the Internet "sea" in accordance with certain methods of retrieval of information needed . It has become the important information technology components of the government, enterprises and institutions   in order to attract people's attention, so the construction site on the status of Internet applications is obvious. Building Campus Forum website is to strengthen the link between teacher and students, through the website, we could have a comprehensive information display school style, excellence and characteristics of school activities and major publishing arrangements. As the popularity and increasing in recent years,   BBS  is increasingly being accepted by all.

With the development of BBS , BBS  has become a university campus in recent years, mutual communication and learning within the common communication tool. The teaching process is a knowledge transfer, the process of interaction between teachers and students information, and since BBS  real-time, open and flexible interaction characteristics, so BBS  has become a good teacher, life and life ways of interaction and communication.This article is based on the ASP.NET development systems of campus BBS forum and regard SQL SERVER as the database server. Among them, the focus is the ADO and ADO.NET, ASP and ASP.NET, ADO.NET and ASP.NET .It is desirable and advanced by using the Web application development   with clear performance requirements. Then the article will introduce the forum user authentication, database design and MD5 encryption, paging technology, so that we learn more about the system.

KEYWORDS:campus BBS ;ADO.NET;ASP.NET;

第一章 绪 论

1.1 研究背景

信息化技术和网络技术的迅猛发展,人们获取信息的途径和学习的方法都发生了巨大的变化。社会在发展,科学在进步,而借助于信息技术的网络技术来进行教育、信息交流已成为社会发展的趋势。信息化教育的显著特点是:①教材多媒化;②资源全球化;③教学个性化;④学习自主化;⑤任务合作化;⑥环境虚拟化;⑦管理自动化。

显然,从七个特点的内容看,信息化教育必然要求加强资源共享,加强学生和老师之间的信息交流。因为信息化教育必然引起教育方式、教学模式等方面的改革。这涉及教育的诸多方面,其中一个主要方面就是教师传授知识和学生获取知识的方式发生了变化,即知识流发生了变化,且具有资源共享、时空不限、多向互动的特点。然而随着信息化教育的不断发展,学生与老师、学生与学生之间的交流日趋减少,这严重影响着现在大学教育的发展。使得老师不知道学生学的怎么样、学生想学什么,学生对老师教授的课程没有兴趣、不清楚自己未来的发展方向等问题日趋严重。

1.2  问题的提出

从20世纪90年代起,世界各国相继启动其面向21世纪的教育信息化建设工程。我国也在2001年发布《教育信息化“十五”发展规划(纲要)》,提出用5到10年时问在全国范围内开展教育信息化建设,全面实施“校校通”工程。在我国,信息化建设的进程在教育行业迅速推进,“学校信息化”、“网”、“校校通”成为当前网络建设的热点。

信息化教育是以现代信息技术为基础的全新教育形态,然而信息技术为教育带来一系列的革新,如服务于个别化学习、拓展了教育内容、丰富了教育方式等以促进学生与学校老师之间的沟通交流。但由于信息技术的广泛发展和互联网的普及,使我们的信息量空前浩繁,大量的、无序的信息混于学习、工作之中。产生这种现状的主要原因在于没有一个专门性的门户对信息进行分类。

BBS论坛是Bulletin Board System的简称,意即电子公告牌。BBS论坛是Internet上最知名的服务之一,提供了Internet上信息交流的强有力手段,是具有强大实时交互功能的信息交流平台。通过BBS论坛,用户可以在BBS论坛某个讨论区上提出问题,发表自己的见解,也可回复他人的问题,还可以针对某个话题和他人展开讨论等等。然而,现今流行的BBS论坛大多是针对专业学术性的信息网站。

1.3 研究目的及意义

本论文的选题为“BBS论坛系统的设计与实现”,即期望使BBS论坛成为了大学内相互沟通与学习交流的常用工具。教学过程是一个知识传递、师生信息互动的过程,而由于BBS论坛具有实时性、开放性和灵活的交互性等特点,因此BBS论坛是一条很好的师生、生生交互和沟通的途径。我们可以利用BBS论坛系统来进行交互式教学,培养学生利用网络进行交互、协商、沟通,形成共识,分享成果的能力,形成批判性和创造性思维。即开发一个基于学生与老师交流、沟通的信息平台。在浏览论坛的过程中,学生可以交流自己在校学习和生活中的感受,同时还可以对现存学校教育、管理等方面内容提问。学校老师也可以在浏览论坛的过程中,针对学生提出的问题给予了解与解答,大大促进学生的发展。同时也让老师了解学生在想些什么。

在BBS论坛里的讨论者基本上都是在校大学生,大学生们较为关心的学习问题,把BBS论坛作为获取专业信息、解决学习问题的重要途径。由于大学课程学习的特殊性,强调学生的自主学习性。当遇到学习上的困难时,除了在课堂上请教老师、同学外,基本上没有集体讨论的时间。而在BBS论坛上,他们可以提出问题,共同商量和讨论,还可以向其他老师、学长学姐们请教。同时,老师们可以利用BBS论坛提供更多的学习信息,师生之间也可以在BBS论坛上进行学术思想交流。

第二章 系统研究

2.1 BBS论坛概述简介

本论文研究的环境和平台是基于WWW的BBS论坛系统,因此本论文仅限于BBS论坛来研究BBS论坛的发展、功能及特点。BBS论坛是指在各网中设立的电子公告版系统,俗称“网上论坛”,是学生与老师信息交流的平台。随着网络的日益普及,BBS论坛将成为学生之间、学校与社会之间交流的信息平台。通过BBS论坛,师生可以在BBS论坛的某个讨论区上提出问题,发表自己的见解,也可回复他人的问题,还可以针对某个话题和他人展开讨论等等。通过BBS论坛,用户可以参与讨论问题,查询感兴趣的信息,寻求帮助等等。

BBS论坛的广泛普及将随着中国教育和科研计算机网(以下简称CERNET)的建立和发展而同步发展起来,而且成为国内BBS论坛的主流之一。1995年8月,清华大学BBS论坛站“水木清华”开通,成为第一个BBS论坛站点,成为大学BBS论坛发展史上的一个里程碑。1996年到1999年,随着互联网的迅猛发展,网建设也进入大跨步发展阶段,越来越多的老师和学生开始接触网络并进入BBS论坛系统。2000年至今,商业网站的热潮带动了网的发展。中国教育和科研计算机网的建设直接引导和推动了网的持续发展,到2002年底,CERNET拥有全国范围的光纤传输网,主干总容量可达40Gbps,覆盖我国近200个城市,有1000多所高校接入CERNET。随着网络建设的加快,BBS论坛站点也越来越多,成了萃萃学子闲暇之余光顾的重要场所。网的发展壮大,使得各大学之间、大学与社会之间的交流更加方便。

BBS论坛是一种全网开放的服务,用户可以在BBS论坛某个讨论区上提出问题,发表自己的见解,也可回复他人的问题,还可以针对某个话题和他人展开讨论等。讨论区中包括了各类学术讨论区以及各类话题讨论区。在这些讨论区中,用户可以挑选自己感兴趣的话题去阅读或发表自己的见解和文章。文件共享区的作用是进行各种文件(程序、数据资料等等)交流的场所。这种交流类似于文件传输FTP功能,主要差异是它可以让普通用户将文件拷贝到这里,与其他用户共享。还有一些BBS论坛站点提供其它的特别服务,如游戏、词典查询、日历查询、IP查询等。总之,BBS论坛的功能在不断扩大,它是一个集学术讨论和休闲娱乐于一身的自由活动空间。CERNET建立以来,BBS论坛很快地发展了起来,目前很多大学都有了BBS论坛,几乎遍及全国上下。清华大学、北京大学、等等都建立了自己的BBS论坛系统,清华大学的水木清华很受学生和网民们的喜爱。综观国内BBS论坛的发展,BBS论坛可以归纳为以下特点:

(1)发展迅速,站点众多;

(2)讨论区全,信息面广;

(3)访问流量大,校内用户占主要部分;

(4)信息更新速度快;

(5)立足服务生活。

2.2 BBS论坛环境下的教与学

BBS论坛是在信息时代的大背景下,将信息技术作为教师的教学辅助手段和学生学习知识的工具。教师“以人为本”转换自身角色,逐步的由知识的传授者、课程的组织者、教学的管理者,转变为BBS论坛环境的创设者,课程内容的设计者,学生学习的指导者和合作者,新型教学方法的研究者。学生不应该只跟在老师后面学习知识,而应当成为BBS论坛环境下的主动学习者。协作式学习,探究式学习,交互式学习,自我建构式学习,是BBS论坛环境下学生学习的主要特点。本BBS论坛的目标是培养具有创新精神和实践能力,能适应信息时代知识经济要求的高素质人才。

BBS论坛为建构主义学习理论创造了理想的学习环境。建构主义理论认为,学习者获取的知识主要是学习者在一定的情境和社会文化背景下,根据自己已经掌握的知识,借助他人的帮助(包括教师和学习伙伴),利用必要的学习资料,通过意义建构的方式而获得的。建构主义强调学习者的认知主体作用,体现了以人为本的思想,但并不忽视教师的指导作用。教师是意义建构的帮助者,促进者,而不是知识的传授者与灌输者。教师的主要角色是:系统地指导学生的学习活动;对课程的结构、内容及教学媒体进行研究设计和优化;作为学生学习的合作者参与讨论,启发学生的智慧,激发学生的学习兴趣;对学习效果进行评估。我国传统的教育思想受行为主义认知理论的影响,认为学习与内部心理过程无关,是教师对学生提供外部刺激引起的反应过程,学生在教师“填鸭式”的灌注下被动地认识、接受知识。

目前在教学中老师基本上秉承了传统教育思想,要使教师适应BBS论坛教学,一方面要加强对教师的信息能力培训,使教师逐步掌握现代教育技术,主动地研究新理论、新方法,积极地推行新的教学模式,探求更有效的教与学的结合点。另一方面教师需要更广泛地学习知识,成为真正意义上的学生学习的指导者。对于学生来说,他们是信息加工的主体和主动建构者,而不是知识灌输的对象。学生在教师指导下充分利用大量的网上学习资源,通过自主、协作、互动、探究式学习夯实基础知识。按照这样的学习理论学生在接触新知识的同时,还要在大脑中建立起新旧知识的联系,实现知识重构促进知识迁移。学生通过网络也能够及时交流学习知识,用以弥补教学点的差异给学生带来的学习差异。

在教学阶段,通过BBS论坛环境下的教与学,教师和学生的信息意识均得到加强获取、检索、表达、交流信息的技能得以提高,信息加工和信息创造的能力得到锻炼,这也是一种良好的信息素养教育。同时,我们还要依托BBS论坛建立起切实可行的教学评估体系,对学生的专业知识、实践能力、信息素养以及教师的教学水平做出综合评估,便于教师及学生看到成绩,找出差距,不断提高。

第三章 开发环境概述

3.1 ADO.NET技术

3.1.1 ADO与ADO.NET简介

ADO与ADO.NET既有相似也有区别,他们都能够编写对数据库服务器中的数据进行访问和操作的应用程序,并且易于使用、高速度、低内存支出和占用磁盘空间较少,支持用于建立基于客户端/服务器和 Web 的应用程序的主要功能。但是ADO使用OLEDB接口并基于微软的COM技术,而ADO.NET拥有自己的ADO.NET接口并且基于微软的.NET体系架构。众所周知.NET体系不同于COM体系,ADO.NET接口也就完全不同于ADO和OLEDB接口,这也就是说ADO.NET和ADO是两种数据访问方式。

3.1.2 数据访问方式的历史 

下面简单的回顾一下微软的数据访问方式所走过的几个阶段。 

ODBC – (Open Database Connectivity)是第一个使用SQL访问不同关系数据库的数据访问技术。使用ODBC应用程序能够通过单一的命令操纵不同的数据库,而开发人员需要做的仅仅只是针对不同的应用加入相应的ODBC驱动。 

DAO - (Data Access Objects)不像ODBC那样是面向C/C++程序员的,它是微软提供给Visual Basic开发人员的一种简单的数据访问方法,用于操纵Access数据库。 

RDO – 在使用DAO访问不同的关系型数据库的时候,Jet引擎不得不在DAO和ODBC之间进行命令的转化,导致了性能的下降,而RDO(Remote Data Objects)的出现就顺理成章了。 

OLEDB – 随着越来越多的数据以非关系型格式存储,需要一种新的架构来提供这种应用和数据源之间的无缝连接,基于COM(Component Object Model)的OLEDB应运而生了。 

ADO – 基于OLEDB之上的ADO更简单、更高级、更适合Visual Basic程序员,同时消除了OLEDB的多种弊端,取而代之是微软技术发展的趋势。 

图 3. 1 ADO架构图表

3.1.3 ADO与ADO.NET对照

在开始设计.NET体系架构时,微软就决定重新设计数据访问模型,以便能够完全的基于XML和离线计算模型。两者的区别主要有: 

ADO以Recordset存储,而ADO.NET则以DataSet表示。Recordset看起来更像单表,如果让Recordset以多表的方式表示就必须在SQL中进行多表连接。反之,DataSet可以是多个表的集合。ADO 的运作是一种在线方式,这意味着不论是浏览或更新数据都必须是实时的。ADO.NET则使用离线方式,在访问数据的时候ADO.NET会利用XML制作数据的一份幅本,ADO.NET的数据库连接也只有在这段时间需要在线。 

由于ADO使用COM技术,这就要求所使用的数据类型必须符合COM规范,而ADO.NET基于XML格式,数据类型更为丰富并且不需要再做COM编排导致的数据类型转换,从而提高了整体性能。 

下面就是以图表的形式描绘了ADO.NET体系:

图 3. 2 ADO.NET架构图表

本系统采用ADO.NET技术,其中为了操作方便与安全数据操作大多采用存储过程实现。具体用到SqlConnection打开一个数据库连接,SqlComman 执行的一个 Transact-SQL 语句或存储过程,最后调用ExecuteNonQuery方法对连接执行 Transact-SQL 语句并返回受影响的行数。

3.2 ASP.NET技术

3.2.1 ASP与ASP.NET比较

从一开始使用ASP,用户面临的问题就是:如果应用程序要有强大的功能,就需要编写大量的代码,所有的功能都必须用代码来实现。虽然使用一些小技巧可以实现代码的共享,但是仍然存在大量嵌入HTML的代码,难于管理。这还只是一个表面现象。

从更深的层次来研究ASP.NET,会发现ASP.NET与ASP之间的区别主要在于以下几个方面:

(1) 效率

ASP是一个脚本编程环境,只能用VBScript或者JavaScript这样的非模块化语言来编写。当ASP程序完成之后,在每次请求的时候解释执行。这就意味着它在使用其他语言编写的大量组件的时候会遇到困难,并且无法实现对操作系统的底层操作。由于它是解释执行的,所以速度和效率要远远低于编译执行的程序。而ASP.NET则是建立在.NET Framework之上的,它可以使用Visual Basic、C#这样的模块化程序设计语言,并且它在第一次执行时进行了编译,之后的执行不需要重新编译就可以直接运行,所以速度和效率比ASP会提高很多。

(2) 可重用性

在写ASP应用程序的时候,ASP代码和HTML混合在一起。只要有需要,就可以在任意的一个位置插入一段代码来实现特定的功能。这种方法表面上看起来很方便,但在实际的工作中会产生大量繁琐的页面,很难读懂,导致代码维护很困难。虽然可以使用include指令尽量让程序模块化,但是仍然不是一个最终彻底的解决方案。而ASP.NET则可以实现代码和内容的完全分离,使得前面提到的问题迎刃而解。

(3) 代码量

ASP需要对所有的要实现的功能通过编写代码来实现。例如,所有的ASP程序员都遇到过这样的情况:为了保证一个用户数据提交页面的友好性,当用户输入错误的时候会显示错误的位置,并尽量把用户原来的输入在控件中显示出来。这样的一个应用需要程序员编写大量的代码来实现。虽然它实在是一个非常简单的功能,但在其他的应用程序中根本不需要编写这么多的代码就可以实现。在ASP.NET中,我们会发现只要预先说明,这样的功能ASP.NET就可以自动实现。所以相对来说,要实现同样的功能,使用ASP.NET比使用ASP的代码量要小得多。

3.2.2 ASP.NET的优点

通过上面对ASP缺点的介绍,我们可以很容易地理解ASP.NET已经解决了这些问题。事实的确如此,并且ASP.NET所提供的不仅仅是这些。下面是ASP.NET的4个主要目标:

● 使代码更清晰

● 提高可部署性、可伸缩性、安全性以及可靠性

● 为不同的浏览器和设备提供更好的支持

● 支持一种全新的Web应用程序

但我们一般不会直接使用这些新特性,因为Common Language Runtime (CLR)会处理其中的大多数特性。ASP.NET的强大功能: 

1. 多语言

ASP曾在脚本引擎方面受到了,特别是VBScript和JScript。而.NET Framework本质上就支持多语言,因此我们可以使用任何需要的语言。在默认情况下,Visual Basic .NET、C#和JScript .NET都附带了CLR(它们都是经过编译的),另外还可以使用许多第三方语言,例如Perl、COBOL等。此外,Visual Studio .NET增加了对Visual C++的支持和Java实现(称为 J# .NET)。由于多语言支持是.NET Framework的一部分,因此不论使用何种语言都没有关系。很明显,从用户的观点来看,保持某种程度上的兼容性可能是最好不过的(例如仅仅为了维护),但对于架构而言,语言的使用是没有任何的。

多语言支持的作用并不仅仅限于可使用什么语言,同时还在于如何使用这些语言。通过它可以用某种语言编写组件,而用另一种语言来使用(或重用)这些组件。比如用C#编写基于服务器的控件,然后在Visual Basic .NET中继承这些控件,接着在JScript .NET (或任何.NET支持的语言)中继续继承这些控件。

2. 服务器处理

使用ASP的一大问题在于页面简单地定义了一个大函数,该函数开始于页面的开头,结束于页面的末尾。不管页面的内容是纯HTML还是ASP生成的HTML,它都是按照页面顺序显示的。因此,逻辑代码依赖于它在页面中的位置,并且无法将HTML控件作为目标,除非将它们作为流的一部分进行显示。我们所做的任何工作都需要编写代码,包括HTML元素的输出。

而ASP.NET就解决了这个问题,方法是为控件引入一个声明的基于服务器的模型。这对ASP开发人员来说是一个截然不同的概念,因为控件在服务器上声明,可以在服务器上编程,也可以是客户端驱动的事件。这听起来确实不可思议,但使用起来很简单。为把一个普通的HTML控件变成一个服务器控件,只需将runat="server"作为一个特性添加到代码中。例如:

这是一个标准的HTML控件,增加了runat特性后,就可以利用服务器端的代码对该控件进行编程了。例如,如果要将该控件置于一个窗体中,并且将该窗体提交回同一个页面中,就可以在服务器端代码中做以下修改:

Dim PersonFirstName As String

PersonFirstName = FirstName.Text

控件在服务器上运行,将允许我们使用ID特性来直接识别它。这样代码就具有更高的可读性,原因在于不必引用窗体的内容或者将这些内容复制到变量中。同时直接引用控件也就更加自然了,从而使页面的开发更加简单。

3.3 JavaScript脚本语言

Script(脚本)是由一组可以在客户端浏览器上运行的命令组合而成的语言,可以把它想像成一个运行于客户端上的可执行程序。目前在网页编制上比较流行的脚本语言包括VBScript及JavaScript。它们都是一种与HTML语言相似的描述性语言,也是以文本形式存在,不像C语言或Java语言那样,需要编译连接成字节码形式的可执行程序。Script语句可以单独存成文档,也可以被嵌入到HTML的文件之中,与HTML语句结合在一起。当需要将Script语句直接加入到HTML文件中时,只要使用一个HTML标记符号< Script >即可。例如:

temp

This is a JavaScript example.

另外,Script程序在HTML中的位置也比较自由,它可以在HTML文件中的任何位置。

脚本语言是一种解释性语言,可以直接由浏览器来解释执行。并且可以直接访问浏览器中的各种对象,如窗口对象、文档对象、框架对象、超链接对象等。脚本语言可以实现的功能很多,可以用于定义网页、在网页中加入动画、对网页中的各种元素进行处理,特别是在处理表单方面有很强功能。不仅如此,它还可以很方便地控制浏览器中的各对象的属性。例如,可以实现打开或关闭浏览器窗口、设置窗口状态、改变窗口中的超链接位置等。总之,一些常用的功能都可以用脚本语言实现。

Java语言的功能很强大,在网页设计中非常的有效,但是它要求创建APPLET的人员必须是程序设计员。Sun Microsystems(太阳微系统)公司为了消除对于WEB站点的开发人员的特殊要求,专门发布了JavaScript。

JavaScript脚本语言是一种解释性,基本对象的脚本语言。虽然,它没有那些真正意义上的面向对象语言那么多的特性,但是对于它的预期功能而言,它能够实现的功能已经够大了。

Javascript并不是任何一种语言的删节版(它只是与Java语言的关系很接近),它也不是任何一种语言的简化版。然而,它的使用是有限的。不能使用它创建一个的应用,比如,它几乎不能进行文件的读写。此外,Javascript脚本只能运行在解释性语言的环境下,或是WEB服务器和WEB浏览器上。

Javascript是一种比较随意的语言,这就并不意味着不一定必须明确地声明变量的类型。此外,在很多情况下,Javascript脚本语言在需要的时候可以进行自动转换。

JavaScript是Java与HTML结合的产物,HTML文档中可以嵌套JavaScript命令,但是JavaScript语句不需要编译,浏览器可以直接执行JavaScript语句。利用JavaScript结合CCS可以创建交互能力很强的WEB界面。

开发设计得BBS论坛系统中就运用了脚本语言,来完成表单提交前的数据验证任务通过使用脚本语言既防止了大量错误数据被提交到服务器,进而节约了宝贵的系统资源;也使网页更加美观、操作更加方便。大大提高了系统的性能。

第四章BBS论坛系统设计与实现

4.1基于.NET的三层Web体系结构

三层体系结构将Web应用程序分成三个不同的逻辑层次:表示层,中间层(应用逻辑层)和数据层。采用“浏览器/Web服务器/数据库系统”的三层结构模型具有网络通讯量小、易于维护和扩展、支持异构数据库等特点,从而满足了目前信息网络的要求。三层结构的模型图如图 4. 1 三层结构模型所示:

                表示层                 中间层                    数据层

图 4. 1 三层结构模型

目前,流行的三层Web体系结构主要有基于的OMG的CORBA、基于微软COM+和基于SUN公司的RMI的分布式三层体系结构。这些的三层结构存在着许多缺陷,如互操作性能差、难于跨平台运行等。Microsoft.NET是创建可互操作的分布式应用程序的新平台,客户端和服务器间能够自由地用HTTP进行通信,不论两个程序的平台和编程语言是什么,应用程序间通信不受现有Proxy和防火墙的,真正做到了能跨平台、跨语言。基于.NET的Web三层体系结构如图 4. 2基于.NET的三层Web体系结构图所示:

表示层                           中间层                         数据层

图 4. 2基于.NET的三层Web体系结构图

1)表示层

在表示层中,.NET是由ASP.NET Web Forms来实现的。基于服务器端的动态页面技术,可以在服务器端根据客户端请求和提交的信息,动态地生成与客户端浏览器类型无关的通用页面,也可HTML以根据客户端浏览器类型,生成特定的数据表现形式,因此这里的表示层是指面向浏览器的表示层。Web Forms控件负责生成用户接口。它提出了一种将应用程序代码和用户接口内容分离的更加结

构化的方法,使ASP.NET网页能动态地编译到类中,用以提高性能。每个引入的HTTP请求都被传递到一个新的网页实例,因此开发人员不需要关心代码中的线程安全性。ASP.NET Web Forms框架起到了如下作用:

●建立和使用可重用的用户界面控件,封装常用的功能,减少页面书写代码的工作量;

●给开发者提供结构清晰、风格井然的页面逻辑;

●强大的所见即所得(WYSIWYG)的页面开发工具;

●使用任何支持的编程语言(例如现阶段支持的C#、VB、VC、Jscript)进行开发,不同语言的ASP.NET代码将是可以互操作的。

2)中间层

在应用逻辑层,分布式业务组件负责企业应用的商业逻辑部署。由于这些业务组件经常负责处理数据库连接、网络资源、线程等高昂的资源,因此一直是三层/多层架构的关键和企业应用的核心。.NET平台内建了对Web的支持。Web Services是基于网络、分布式的模块化组件,它执行特定任务,遵守具体的技术规范,这些规范使得Web Services能与其他兼容的组件进行互操作。

3)数据层

.NET框架使用ADO.NET完成对数据库的访问。在创建基于Web的应用程序时我们在ASP.NET中使用ADO.NET技术通过网络和Web进行数据访问.ADO。

.NET技术是一个基于标准的、面向创建分布式数据共享应用程序的编程模型,是ADO技术延伸和发展,带来了比ADO技术更为优越的互操作性、可维护性、司编程性和更出色的性能。ADO.NET包含了所有允许数据处理的类,这些类拥有典型的数据访问功能(如索引、排序和视图)的数据容器对象。在需要断开连接访问远程数据的解决方案中,ADO.NET使用XML在程序和网络之间实现数据交换。任何能够读取XML数据的组件都能处理ADO.NET组件。用XML格式的数据集传送信息,是开发者能够轻易地把处理数据的部分和用户界面的部分分别放在不同的服务器上。因此,它能够极大地提高性能和增强支持多用户系统的可维护性。ADO.NET还为基于Web的数据分享应用程序提供了极大的可伸缩性。Web应用是当今分布式应用最广泛的应用方式。基于.NET的三层结构在Web中的应用显著提高了应用程序的跨平台性和互操作性,增强了系统的灵活性、开放性。因此,我们将这一项新兴技术应用到课题的研究中。

4.2系统功能

4.2.1概述

本BBS论坛论坛采用基于.NET的Web三层体系结构:表示层、中间系统处理层(Web服务器)和数据层(网页库、讨论资料和学习记录资料库)。前台应用即表示层功能,包括登录与注册、、分类讨论、资源共享等,后台管理包括安全管理、帖子管理、公告管理、板块管理、用户管理、数据统计等。BBS论坛论坛中的帖子、附件等都直接存储到数据库,通过SQL语言实现信息挖掘。我们采用数据库来存储BBS论坛系统中的信息,因为数据库存储相对简单且高效,能够对BBS论坛进行更好的控制,也能够对资料提供一些验证和保护。

本论坛的开发为了BBS论坛系统在中得到更多的实践与应用,以求促进信息化教育的发展。师生利用论坛进行课程的教与学,充分利用论坛的教学资源库以求实现学习效果与教学质量的提高。学生可以通过在论坛中交流与讨论,以实现问题的解决和知识的获取,培养学生创新能力与合作精神;教师可以通过论坛来进行讨论、经验分享及反思教学经验,以促进科学教师的专业教学知识与技能。

目前本系统已经初步体现知识管理的思想,构建了一个教学资源库,随着系统的功能不断完善,必将使资源库成为一个知识库,通过社区众多用户与学习者的互动交流,最终达到知识共享与知识创新。

4.2.2系统整体架构

BBS论坛系统包含“用户功能”和“后台管理”两大模块,用户功能模块包含:登录与注册、、分类讨论、帖子管理等子模块;后台管理模块包含:安全管理、帖子管理、公告管理、板块管理、用户管理、数据统计等子模块。下面给出系统的整体架构图如图 4. 3 整体架构图所示。

图 4. 3 整体架构图

系统存在着两种用户:注册用户和管理员。用户的权限是向下覆盖的,即上级权限包含下级权限,在我们的论坛中,管理员的权限是上级权限。管理员具有系统的最高权限,包括系统的用户功能与后台管理的全部权限。

4.2.3系统用例图

通过系统整体架构进行分析,我们已经了解系统所具有的整体功能,下面对

帖子、板块和用户等对象的相关方法进行分析,给出相关用例图如下。

图 4. 4 帖子管理

图 4. 5 信息管理

4.3 数据库设计

本系统采用SQL Server 2005作为后台数据库,数据库设计包括建数据库、建表、关系、储存过程、触发器等。根据对系统模块功能的详细分析,我们设计出以下数据库表,如表 4. 1 数据库表所示:

4.31功能设计描述

4.32所涉及到的表

4.33BBS论坛User(用户表)

字段名称数据类型及长度允许为空中文说明备注
UserIdintNO用户ID

自动增长主键
UserNamevarchar(50)NO用户名

UserPwdvarchar(50)NO用户密码
UserEmailvarchar(50)NO用户邮箱找回密码1

UserLoginTimeDatetimeNO用户注册时间
LastIpvarchar(50)YES上次登陆的IP地址

LastTimeDatetimeYES上次登陆的时间
UserQuizVarchar(100)YES用户提问修改邮箱
UserKeyVarchar(50)YES用户答案找回密码2

UserLvIntNO用户等级初始为1

UserCountIntNO积分统计初始为0

UserOnlineHourIntNO用户在线时间初始为0

UserJbIntNO用户金币初始为0

UserYbIntNO用户银币初始为10

UserQloryvarchar(500)

YSE所获荣誉荣誉标示文字
UserNickname

varchar(100)

YES用户昵称
UserSexChar(2)

YES用户性别
UserAgeIntYES用户年龄
UserBirdayVarchar(50)YES出生年月
UserLoveVarchar(200)YES爱好
UserImgVarchar(50)YES用户头像用户头像路径
UserCityVarchar(50)YES用户所在地
UserQqVarchar(20)YES用户QQ

UserPhotoVarchar(20)YES用户电话
UserQianMVarchar(600)YES用户个性签名回复时可显示
UserRoleIntNO用户权限初始为1

1.

2.

3.

4.

4.1.

4.2.

4.3.

4.3.1.

4.3.2.

4.3.3.

4.3.4.BBS论坛Info(短消息表)

字段名称数据类型及长度允许为空中文说明备注
InfoIdIntNO短消息ID

自动增长
InfoInIdIntNO接收人ID

InfoOutIdIntNO发送人ID

InfoTimeDatetimeNO发送时间
InfoTextVarchar(500)NO信息正文
IsLookintNO是否查看默认为0

4.3.5.BBS论坛Friend(好友表)

字段名称数据类型及长度允许为空中文说明备注
UserIntNO用户ID

用户表外键
FriendIdIntNO好友ID

RemarkVarchar(50)YES 好友备注

BlackIntNO黑名单默认为0,1则为已添加到黑名单,将不收对方消息

4.3.6.BBS论坛Qlory(荣誉表)

字段名称数据类型及长度允许为空中文说明备注
QloryIdIntNO标示ID

自动增长不可删除
QloryUrlVarchar(50)NO荣誉图像地址
QloryTxtVarchar(50)NO 荣誉标示

4.3.7.BBS论坛BanMian(版面表)

字段名称数据类型及长度允许为空中文说明备注
BanMianIdIntNO版面ID

自动增长
BanMianNameVarchar(50)NO版面名称
BanMianRoleIntNO 版面权限

默认为1

4.3.8.BBS论坛BanKuai(版块表)

字段名称数据类型及长度允许为空中文说明备注
BanKuaiIdIntNO版块ID

自动增长
BanKuaiNameVarchar(50)NO版块名称
BankuaiRemarkVarchar(500)NO板块备注
BankuaiUrlVarchar(200)YES板块表示地址
RarMaxIntNO允许附件大小默认为10M

BanMianIntNO所属版面
BanKuaiAllVarchar(600)YES板块公告
BanKuaiRoleIntNO版块权限默认为1

4.3.9.BBS论坛Write(发帖表)

字段名称数据类型及长度允许为空中文说明备注
WriteIdIntNO帖子ID

自动增长
WriteTitleVarchar(200)

NO帖子标题
WriteContentTextNO帖子内容
ParentIdIntNO父帖子ID

为0则为主贴

UserIntNO发帖人ID

BBS论坛User表外键

BanKuaiIntNO所属板块
WriteTimeDatetimeNO发帖时间
WriteIpVarchar(50)

NO发帖IP

WriteTopintNO置顶标示初始为0,置顶为2

WriteSoulIntNO是否加精初始为0,1为加精

WriteCountIntNO浏览量初始为0

WritePingIntNO是否暂时屏蔽默认为0,1为屏蔽

WriteRarIntNO附件ID

默认0,无附件

WriteRoleIntNO回复权限默认为1

4.3.10.BBS论坛Rar(附件表)

字段名称数据类型及长度允许为空中文说明备注
RarIdIntNO附件ID

自动增长
WriteIntNO 所属帖子

RarUrlVarchar(50)NO 附件路径

RemarkVarchar(100)YES 附件说明

4.3.11.BBS论坛Task(初级任务进度表)

字段名称数据类型及长度允许为空中文说明备注
UserIntNO用户ID

BBS论坛User表外键

TaskNameVarchar(50)NO任务名
TaskOkIntNO 任务进度

TaskTimeDatetimeNO任务开始时间
TaskMoenyIntNO 任务奖励

默认为0,1为已领取

4.3.12.BBS论坛BanZhu(版主表)

字段名称数据类型及长度允许为空中文说明备注
UserIntNO用户ID

BBS论坛User表外键

BanKuaiIntNO板块ID

TimeDatetimeNO任职时间
RemarkVarchar(500)YES 备注

4.3.13.BBS论坛Admin(管理表)

字段名称数据类型及长度允许为空中文说明备注
AdminIdIntNO 管理员ID

自动增长
AdminNameVarchar(50)

NO管理员名称初始为admin

AdminPwdVarchar(100)

NO管理员密码初始为admin

LastIpVarchar(100)

YES上次登陆IP

LastTimeDatetimeYES上次登陆时间
ISLockIPIntNO是否锁定IP

默认为0(不锁定)

LockIPVarchar(50)

YES要锁定的IP

其他IP不能登陆

AdminCheckintNO管理验证默认为8888

4.4 数据库连接及数据绑定

本论坛采用web.config文件保存连接字符串:

    

    

系统数据库操作大部分采用存储过程实现,这样可以避免数据丢失或着数据混乱。首先采用.NET提供的SqlConnection类打开数据库,然后打开SqlCommand对象对 SQL Server 数据库执行的一个 Transact-SQL 语句或存储过程,利用SqlCommand的CommandType可获取或设置一个值,该值指示如何解释 CommandText 属性。如cmd.CommandType = CommandType.StoredProcedure;即可设置SqlCommand对象以存储过程的名称解释传入SqlCommand对象的值。然而ADO.NET提供了一种更加简介灵活的数据库访问方式,断开式数据库连接访问。这种断开式访问是把数据库一次性复制到内存中,用户可对内存中数据库进行一系列操作,最后调用Update方法将数据和更新一并传回数据库。

下面是利用断开式访问方式对绑定数据库:

        //绑定帖子数据

    private void Notedatabind()

    {

        string sqlcon = ConfigurationManager.ConnectionStrings["SqlCon"].ToString();

        string cmd = @"select  *  from Articles as a,UserDetail as ud,UserInfo as ui where a.Articleid = 1 and ui.UserName = a.Author and ud.UserID = ui.UserID";

        DataTable dt = new DataTable();

        using (SqlDataAdapter sda = new SqlDataAdapter(cmd, sqlcon))

        {

            sda.Fill(dt);

        }

        Note.DataSource = dt;

        Note.DataBind();

    }

4.5 用户验证

验证控件检查用户在 TextBox 控件中的输入是否符合要求。在窗体发送到服务器时会发生验证。验证控件可测试用户的输入内容,如果输入没有通过任何一项验证测试,则 ASP.NET 会将该页发回客户端设备。发生这种情况时,检测到错误的验证控件会显示错误消息。如图所示:

图 4. 6 用户注册

验证控件又分为用户体验层验证和服务器端验证,用户体验层验证主要体现为对用户输入的格式是否正确给予用户提示,如格式输入不能为空或者两次输入不一致等情况。而服务器端验证主要是对用户输入的信息与服务器中数据进行比较才进行的验证,如当用户输入帐号时需要验证帐号是否已存在,这时候就需要连接服务器端数据库,然后将数据读取到本地与用户输入的信息进行比较。

下面是用户自定义服务器端验证:

protected void CustomValidator1_ServerValidate(object source, ServerValidateEventArgs args)

    {

        string strName = args.Value;

        if (Judge(strName))

        {

            args.IsValid = false;

        }

        else

        {

            args.IsValid = true;

        }

    }

    private bool Judge(string strName)

    {

        string connstr = ConfigurationManager.ConnectionStrings["SqlCon"].ToString();

        SqlConnection con = new SqlConnection(connstr);

        con.Open();

        SqlCommand cmd = new SqlCommand("select count(*) from UserInfo where userName='" + strName + "'", con);

        int count = Convert.ToInt32(cmd.ExecuteScalar());

        con.Close();

if (count > 0)

        {

            return true;

        }

        else

        {

            return false;

        }

    }

4.6 加密技术

使用md5对密码加密,增强系统的安全性,并为以后的工作做好前提基础。不仅对用户实行的保密措施,更增加了该项目的价值筹码。在金融、房地产、银行等需要加密的货款以及重要信息方法,起到不可忽视的作用。

实现代码:

    // 对输入的input进行加密

     static string getMd5Hash(string input)

    {

        //创建一个新的MD5实例

        MD5 md5Hasher = MD5.Create();

        //将输入转换为字节数组并计算哈希值

        byte[] data = md5Hasher.ComputeHash(Encoding.Default.GetBytes(input));

        // Create a new Stringbuilder to collect the bytes

        // and create a string.

        StringBuilder sBuilder = new StringBuilder();

        // 将哈希值转换为十六进制

for (int i = 0; i < data.Length; i++)

        {

            sBuilder.Append(data[i].ToString("x2"));

        }

        // 返回十六进制字符串

        return sBuilder.ToString();

    }

    // 比较用户输入是否与加密后的数据一致

    static bool verifyMd5Hash(string input, string hash)

    {

        // Hash the input.

        string hashOfInput = getMd5Hash(input);

        // Create a StringComparer an comare the hashes.

        StringComparer comparer = StringComparer.OrdinalIgnoreCase;

        if (0 == comparer.Compare(hashOfInput, hash))

        {

            return true;

        }

        else

        {

            return false;

        }

    }

4.7 文章分页技术

DataPager 类用于对数据进行分页以及为实现 IPageableItemContainer 接口的数据绑定控件显示导航控件。

可以通过使用 PagedControlID 属性将 DataPager 控件与数据绑定控件关联起来。也可以选择将 DataPager 控件置于数据绑定控件层次结构的内部。例如,在 ListView 控件中,可以将 DataPager 控件置于 ListView..::.LayoutTemplate 模板内部。

可以通过更改 PageSize 属性自定义为每个数据页显示的项数,本系统设置每页显示5条信息。也可以通过设置 QueryStringField 属性更改将页面提交给服务器的方式。

代码实现:

ShowPreviousPageButton="False" />

ShowPreviousPageButton="False" />

页面加载时首先调用Page_Load事件,所以在该事件中将帖子数据和回复数据,IsPostBack属性指示页面是否正被首次加载。

    protected void Page_Load(object sender, EventArgs e)

{

     //绑定回帖数据

        if (!IsPostBack)

            databind();

 }

然而实现分页的过程中出现了一些问题,具体表现在点击上一页、下一页或者数字跳转页面时通常要点两下才能有反应,而且有时候乱跳页。找了半天原因也没有找到。后来在CSDN论坛上找到了同病相怜的人,有专家给出了一个解决方案。把Page_Load里的数据绑定移到Page_PreRender中,也就是:

       protected void Page_Load(object sender, EventArgs e)

{

     //绑定回帖数据

        //if (!IsPostBack)

    //databind();

 }

//解决datapager反应两次问题

    protected void Page_PreRender(object sender, EventArgs e)

    {

        databind();

}

试了一下分页果然正常了。难道是Page_Load来的太迟?不得而知。

后来在MSDN中查到对PreRender事件的描述:

在该事件发生前:

Page 对象会针对每个控件和页调用 EnsureChildControls。

设置了 DataSourceID 属性的每个数据绑定控件会调用 DataBind 方法。

页上的每个控件都会发生 PreRender 事件。使用该事件对页或其控件的内容进行最后更改。

显示效果如图:

         

图 4. 7 分页显示

4.8 在贴子中实现超文本信息输入

用户在书写贴子内容时,可以输入各类带格式文本。例如:如果用户希望输入一段红色文字“大家注意:我是一个大一新生请大家指教!”,就可以通过颜色工具栏和下划线功能来实现。还可以实现字体大小,加粗,对齐方式等功能。

图 4. 8 用户输入

实现代码如下(采用HTML和JavaScript编写):

"webEditor.onClick_Color(this,'backcolor');" onmouseover="webEditor.onMouseOver(this,'webEditor.onClick_Color(this,1)')" class="backcolor" title="背景颜色">

 

当用户选择对应功能的时候激活onclick时间调用后台js代码,如要实现上述字体效果则需要首先点击字体颜色效果,触发onmouseover事件,调用js函数webEditor.onMouseOver():

this.onMouseOver=function(sender,event)

    {

   //clearTimeout() 方法可取消由 setTimeout() 方法设置的 timeout。

        clearTimeout(this._waitInterval);

        //缓存当前对象,用于延时处理

        this._sender=sender;

        //鼠标停留了一定的时间久触发onclick时间,弹出窗口

        var event=event==null?this.name+".HideAllMenu();":event.replace(/this/g,this.name+"._sender");

        if(sender!=null)

        {

            sender.onmouseout=this.onMouseOut;

        }

        this._waitInterval=window.setTimeout(event,300);        

    }

图 4. 9 选择颜色

然后选择期望的颜色值,左键点击,触发onclick事件调用js函数onClick_Color():

this.onClick_Color=function(sender,option)

    {

         /// 

字体颜色

///

         sender.id="temp_"+getPosLeft(sender);

         option=option==null?"forecolor":"backcolor";

         

         this.HideAllMenu();

         var obj=getObj("_palette_"+sender.id);

         if(obj)

         {

            showObj(obj);

         }

         else    {    this._createColorPalette(sender,this.name+".format('"+option+"',this.title);hiddenObj('{$palette}');"+this.name+"._editor.focus();return false;");

         }

    }

将对应字体颜色的style设置为对应字体颜色,同样点击下划线功能即可实现上述对应字体效果。

4.9 运行效果

首页中各种版块的分化,为了使同学们能够在本论坛中交流和学习,模块主要分为编程区、交流区、和教程下载区。在编程区同学们可以交流学习编程语言方面的知识,交流区使得同学们可以在学习过程同交流经验和心得、还可以提出问题,可以教程下载区找到与学习相关的各种资料文献。如图 4. 10 主页模板图:

图 4. 10 主页模板图

图 4. 11 用户详细信息图显示用户注册的详细信息,当用户忘了密码或密码丢失时可根据注册信息找回密码,同时用户可根据需要上传个性化头像,点击加载则可显示预览情况。

图 4. 11 用户详细信息图

图 4. 12 帖子及回复信息为用户所发帖子信息及不同用户回复信息显示。

图 4. 12 帖子及回复信息

第五章 系统测试与运行环境

5.1 系统测试

把设计开发的BBS论坛论坛布置在如下所述最基本的应用环境下,运行是非常理想的。操作系统必须Windows 2000 Professional/Server,WindowsXP Professional、Windows.NET Server或以上版本并安装了IIS5.0以上版本。数据库使用SQL Server 2005及以上版本。.NET Framework 3.5 或以上版本。

在经过超级会员一系列的论坛基本设置以后,就可以开始在论坛上发表贴子查看贴子回复贴子及进行其它论坛操作。系统的反应很快,读出页面基本上不需要多少时间,一晃就能出来。经过对论坛各项功能操作测试,系统具有较好的稳定性。

把设计开发的BBS论坛论坛布置在互联网上,网站提供的基本功能有:支持ASP.NET,支持SQL Server 2005数据库,但此数据库文件必须放置在服务器。经过试运行,尽管速度有些慢,其系统运行相当稳定。

5.2 系统维护

由于时间和技术水平的缘故,所开发的BBS论坛系统仅是初步具备普通论坛的一般功能,系统的功能有待在实践过程中不断发现并完善,包括已有功能的完善以及其他功能模块的开发。如用户登陆之后进行即时通信,收发公共邮件等。如果以后能从事这方面的工作,我相信可以将本BBS论坛系统不断完善并投入使用。

总结

本文详细论述了BBS论坛论坛的设计与实现,该论坛基本实现了需求分析中的功能,其中浏览者要注册成功后,登陆验证后便可以发帖子、回复帖子,一般浏览者只能查看帖子、查看信息、不能回复帖子,系统到数据库中核对正确后进入帖子界面,关键实现了浏览者查看信息,回复、添加帖子,当管理员登陆成功后,管理员有一定的权限,能修改、删除、回复、添加帖子.并对论坛帖子进行添加,修改,删除等等。

根据目前时代的潮流,技术水平的进步,有很多的方法可以制作网站,由于在学校学习知识有限,所以也只能用单一简单的方法去实现,论坛的实现需要革新的技术,单一论坛的老套已经不适合现在论坛的发展了,论坛形式的单一化,和数据库容量的问题是困扰着现在技术发展的一大难题,所以解决当前的问题是可不容缓的。时代在进步,科技的日新月异,人类思想的进步发展,需要我们更加的革新精神,掌握潮流,掌握现代就是做好网站的一种前提。

在学习中不断的交流是进步的最快方法,没有百分百自学成才的,只有不断的互相鼓励,互相配合,才能够完成一项巨大的工程,不仅在精神上和物质上有更多的进步,在增加团队意识的同时,思想的进步将是更加举足轻重的,现今社会已经不是一个单打独斗的社会了,社会的进步和繁荣,都是需要大家来共同协作的。在做毕业设计的过程中我充分感受到团队合作的重要性。

本系统源码下载地址 http://115.com/file/aqazwtdm

技术交流Q:  2431797625  

技术问题和代码解释,请直接说出系统的名字和疑问, 我上线时候会给你们解答, 问在不在的就不回复了.

致谢

感谢我的导师,他严谨细致、一丝不苟的工作作风一直是我工作、学习中的榜样;他循循善诱的教导和不拘一格的思路给予我无尽的启迪。 

同时,感谢我的室友们,从遥远的家来到这个陌生的城市里,是你们和我共同维系着彼此之间兄弟般的感情,维系着寝室那份家的融洽。四年了,仿佛就在昨天。四年里,我们没有红过脸,没有吵过嘴,没有发生上大学前所担心的任何不开心的事情。只是今后大家就难得再聚在一起吃每年元旦那顿饭了吧,没关系,各奔前程,大家珍重。

最后,感谢我的爸爸妈妈,焉得谖草,言树之背,养育之恩,无以回报,你们永远健康快乐是我最大的心愿。 

在论文即将完成之际,我的心情无法平静,从开始进入课题到论文的顺利完成,有多少可敬的师长、同学、朋友给了我无言的帮助,在这里请接受我诚挚的谢意! 

参考文献

[1] 祝智庭.现代教育技术--走进信息化教育.上海高教.2001

[2] Karl M.wiig(1999).Knowledge Management Methods-Practical Approaches to Managing ltd.Schema Press,Ltd,1999,p.19

[3] Gilbert Probst(1999). Managing knowledge,building blocks for sucess.John Wiley&Sons,Ltd.1999,p.10

[4] 张群瞻等 《网页三剑客培训教程》 冶金工业出版社 2005

[5] 胡杰 《动态网页设计基础教程》 科学出版社,  2005

[6] 《Microsoft SQL Server 2000 Reporting Services》清华大学出版社

[7] 孟小峰、王珊《数据库系统导论》 机械工业出版社,2000

[8] 陈志泊,李冬梅,王春玲《数据库原理及应用教程》人民邮电出版社,2002

[9] 吴以欣 《JavaScript》人民邮电出版社,2000

[10] 李强 《JavaScript权威指南》人民邮电出版社,2000

[11] 张大磊 王少葵 范睿  《C#与.NET 3.5 高级程序设计》(第4版) 人民邮电出版社 2009.03

[12] 施游、徐锋等《ASP.NET 2.0 电子商务开发实战》人民邮电出版社 ,2002

[13] 刘基林 《精通 ASP.NET 3.5》人民有点出版社 ,2005

[14] 张领 《ASP.NET项目开发全程实录》清华大学出版社2005

[15] 李华、张胜利《ASP.NET 2.0课程设计》清华大学出版社,2002

[16] 方兵《ASP.NET 2.0网站开发技术详解》机械工业出版社,2002

文档

BBS论坛的设计与实现

毕业设计(论文)专业班级学生姓名学号课题BBS论坛的设计与实现指导教师摘要在当代,英特网已经成为人们快速获取、发布和传递信息的重要渠道,它在人们日常、经济、生活等各个方面发挥着重要的作用。Internet上发布信息主要是通过网站来实现的,获取信息也是要在Internet中按照一定的检索方式将所需要的信息从网站上下载下来。它已成为、企事业单位信息化建设中的重要组成部分,从而倍受人们的重视,因此网站建设在Internet应用上的地位显而易见。构建论坛网站是为加强老师同学们之间的联系,通过网站,
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top