基于AJAX的网页聊天系统 (毕业设计).doc

上传人:仙人指路1688 文档编号:2881210 上传时间:2023-03-01 格式:DOC 页数:39 大小:2.68MB
返回 下载 相关 举报
基于AJAX的网页聊天系统 (毕业设计).doc_第1页
第1页 / 共39页
基于AJAX的网页聊天系统 (毕业设计).doc_第2页
第2页 / 共39页
基于AJAX的网页聊天系统 (毕业设计).doc_第3页
第3页 / 共39页
基于AJAX的网页聊天系统 (毕业设计).doc_第4页
第4页 / 共39页
基于AJAX的网页聊天系统 (毕业设计).doc_第5页
第5页 / 共39页
点击查看更多>>
资源描述

《基于AJAX的网页聊天系统 (毕业设计).doc》由会员分享,可在线阅读,更多相关《基于AJAX的网页聊天系统 (毕业设计).doc(39页珍藏版)》请在三一办公上搜索。

1、 本科毕业设计(论文)题 目 基于AJAX的网页聊天系统 系(院) 计算机科学与工程学院 年 级 网络工程 班 级 学生姓名 指导教师 论文提交日期 基于AJAX技术的聊天室的设计与开发 摘 要:聊天室是一个聚集社区成员,召开网络会议的理想场所。在没有即时通讯软件出现之前,大多数网民在一起聊天用的都是网页形式的聊天室。创建一个聊天室,可以有助于提高网站的访问量。可以使网友与网友之间,网友与客服之间的交流更加方便和快捷,更好的解决网友的问题。一般聊天室的开发有两种方法:一种是采取将聊天信息存储于数据库的方法;另一种就是采取静态数据的方式存储。本聊天室系统开发将采用将聊天信息存储于数据库的方法,并

2、应用AJAX实现页面的无刷新效果。本设计所设计的网络聊天室是使用ASP.NET技术实现的,主要体现的是AJAX的功能实现,其中介绍了本聊天室的各项功能,主要有游客登录聊天和管理员管理聊天室。通过聊天室系统的设计,熟悉了网站建设的基本操作。包含网页制作、服务器的建立与管理、数据库建立与使用等。熟悉HTML语言、C#程序设计、SQL Server 2005、AJAX、Session对象的应用、IIS服务器的使用以及网站的整体建设等。掌握网站的基本架构、服务器与数据库的连接等。本系统具有多方面特点:用户界面简洁,系统功能完善,管理员操作简单,界面美化。关键词:The design and devel

3、opment of the chat room based on AJAX technology Abstract:Chat room is a gathered community members, its the ideal place to hold the network meeting. Before the immediately messaging software, most Internet users chatted by the chat room of the web together. Create a chat room, it can help improve y

4、our views. It can make the net friends closer, also by the customer service and the communication. It can make them more conveniently and quickly.The development of general chat room, there are two ways. one is to take the chat information stored in the database. And another way is to take a static

5、data storage. This chat room system will use the method of chat information stored in database, and use the AJAX to realize the page refresh without effect.AJAX is asynchronous JavaScript and XML technology, it is a kind of create interactive web of application development technology. Add AJAX make

6、up the fault between the browser and server, it can content all the needs of Web applications. Through the AJAX can use the XMLHttpRequest object to communicate with the server directly. Through this object, JavaScript can exchange data with the Web server page in not overloaded.The web chat rooms s

7、uch as sina show, baidu hi, WebQQ are the powerful web chat tools in ordinary. They are chat rooms. Get into the website is to look for common interests friends of the chatting. The functions of chat room make the instant communication technology integration to a web site. Make the visitors visit th

8、e website and have an instant chat at the same time. Improve the user experience and site active degrees auxiliary. For example xtalk.Keywords: chat room; date base;AJAX;目录1绪论11.1研究开发背景11.2国内外现状11.3论文研究的主要内容和解决方法22.系统概述32.1系统简介32.2系统开发工具32.2.1 C#简介32.2.2 AJAX介绍42.2.3 SQL Server 2005 数据库介绍72.2.4 SQL语

9、言82.2.5 IIS简介93系统分析103.1需求分析103.1.1 系统需求分析103.1.2系统可行性分析103.2概要设计114.系统设计134.1 系统开发的目的和意义134.2系统的功能结构设计134.2.1系统功能模块划分134.2.2 系统流程图154.3 ScriptManager164.3.1 局部更新面板UpdatePanel控件164.3.2 定时器操作控件Timer控件174.4数据库设计174.4.1数据库概念结构设计174.4.2数据表设计184.4.3 数据库表设计184.4.4 数据流程图.185.系统实现205.1网络聊天室首页205.2普通用户聊天室页面2

10、25.2.1 用户列表一览235.2.2 聊天记录页面245.2.3 发言模块265.3管理员聊天室页面275.3.1 查看聊天记录275.3.2 将用户踢出聊天室296.系统测试306.1测试方案及测试用例306.1.1功能测试30结束语31参考文献33致 谢341绪论1.1研究开发背景互联网是一个具体的网络实体,没有一个特定的网络疆界,泛指通过网关连接起来的网络集合,即是一个由各种不同类型和规模的独立运行与管理的计算机网络组成的全球范围的计算机网络。这些网络通过普通电话线、高速率专用线路、卫星、微波和光缆等通讯线路,把不同国家的大学、公司、科研机构和政府等组织的网络资源连接起来,从而进行通

11、信和信息交换,实现资源共享。近年来计算机技术的快速发展,特别是计算机网络的发展,越来越深刻的改变了人们生活的方方面面。使得人们能以更加低廉的价格,开发出更方便,更实用的网络工具。各种在线服务系统,更是深刻的影响了人们的联系和交流方式,使得人们科研在远隔千里之遥也可以即时的通讯。过去的种种陈旧的联系方式,已经不能满足现代生活的需要。网上聊天系统作为一种方便消费者与人们之间联系的实用系统便应运而生。网上聊天系统是为人们进行交流和联系提供了一个平台。通过提供完善的网上聊天系统的管理,可以达到增进人们与消费者之间、消费者与消费者之间的交流和联系的目的。利用互联网廉价、高速、广泛的特性,网页即时聊天工具

12、将具有广阔的前景,因为在互联网覆盖到的地方只要在网页浏览器中输入简单的网址就可以实现即时的聊天,简单、方便、易用。1.2国内外现状网络聊天室利用计算机和同步交流软件,应用一点的技术形成的聊天空间,是当今高校广泛应用的一种网络服务, 它为广大学生提供了一种方便快捷的沟通方式, 在线聊天是上网的重要活动之一。作为操作简便也是出现最早的网上聊天方式, 聊天室聊天又是其中最普及的一种。聊天室的主要发展趋势是大型化和专业化, 目前比较有效的途径, 一是向实用性方向发展, 将聊天室互动的技术特性充分发挥,满足远程交流需要。提供受众需要的内容, 例 如进入在线学习领域、专家在线辅导、聊友之间进行讨论。聊天室

13、是当今广泛应用的一种网络服务, 它为广大网民 提供了一种方便快捷的沟通方式, 在线聊天是上网的重要活 动之一。第十六次CNNIC 调查结果显示: 在网络用户经常使 用的网络服务/功能调查中, 网上聊天( 聊天室、QQ、ICQ 等) 占被调查人群的42.6%, 处于第四位, 作为操作简便也是出现 最早的网上聊天方式, 聊天室聊天又是其中最普及的一种。 而多数人认为聊天室是一种用来消遣而缺乏实际价值的 东西, 许多大型网站建立了聊天室, 但基本上是被定义为聚拢 人气而不是带来收益的一种服务项目。目前能够实现赢利的 聊天室很少, 它是否具有商业价值以及其商业价值如何兑现 的问题似乎并没有引起学界的关

14、注。1.3论文研究的主要内容和解决方法本课题研究内容主要包括以下方面:网页聊天系统的需求分析,利用需求分析基本方法,描述本系统的功能需求,给出系统模型。网页聊天系统整体解决方案的系统设计,并规划了子系统的功能模块,介绍部分功能模块详细功能设计。网页聊天系统相应的测试方法和完整的实施方案的设计,并实现该系统、给出测试结果。网页聊天系统采用基于WEB的设计方式实现,便于用户操作,使用AJAX无刷新技术,构建了基于AJAX的系统整体架构。2.系统概述2.1系统简介系统名:基于AJAX技术的聊天室的设计与开发功能:实现基于AJAX的即时无刷新聊天网站运行平台:Windows xp、windows7、w

15、indows 2000等。 2.2系统开发工具本系统所使用的开发工具为:Visual Studio 20082.2.1 C#简介微软C#语言定义主要是从C和C+继承而来的,而且语言中的许多元素也反映了这一点。C#在设计者从C+继承的可选选项方面比JAVA要广泛一些,它还增加了自己新的特点(比方说源代码版本定义).但它还太不成熟,目前不可能挤垮JAVA。C#是微软对这一问题的解决方案。C#是一种最新的、面向对象的编程语言。它使得程序员可以快速地编写各种基于MICROSOFT .NET平台的应用程序,MICROSOFT .NET提供了一系列的工具和服务来最大程度地开发利用计算与通讯领域。正是由于C

16、#面向对象的卓越设计,使它成为构建各类组件的理想之选无论是高级的商业对象还是系统级的应用程序。使用简单的C#语言结构,这些组件可以方便的转化为XML网络服务,从而使它们可以由任何语言在任何操作系统上通过INTERNET进行调用。C#具有以下特点:1、效率与安全性;2、消除大量程序错误;3、扩展交互性。C#语言允许类型定义的,扩展的元数据。这些元数据可以应用于任何对象。项目构建者可以定义领域特有的属性并把他们应用于任何语言元素类,接口等等。然后,开发人员可以编程检查每个元素的属性。这样,很多工作都变得方便多了,比如编写一个小工具来自动检查每个类或接口是否被正确定义为某个抽象商业对象的一部分,或者

17、只是创建一份基于对象的领域特有属性的报表。定制的元数据和程序代码之间的紧密对应有助于加强程序的预期行为和实际实现的之间的对应关系。C#包含了一个特殊的功能,使程序可以调用任何纯API。在一段特别标记的代码中,开发者可以使用指针和传统C/C+特性,如手工的内存管理和指针运算。这是其相对于其它环境的极大优势。2.2.2 AJAX介绍(1)Ajax的意义AJAX 指异步 JavaScript 及 XML(Asynchronous JavaScript And XML)。Ajax的核心是JavaScript对象XmlHttpRequest。该对象在Internet Explorer 5中首次引入,它是

18、一种支持异步请求的技术。简而言之,XmlHttpRequest使您可以使用JavaScript向服务器提出请求并处理响应,而不阻塞用户。AJAX 不是一种新的编程语言,而是一种用于创建更好更快以及交互性更强的 Web 应用程序的技术。通过 AJAX,您的 JavaScript 可使用 JavaScript 的 XMLHttpRequest 对象来直接与服务器进行通信。通过这个对象,您的 JavaScript 可在不重载页面的情况与 Web 服务器交换数据。AJAX 在浏览器与 Web 服务器之间使用异步数据传输(HTTP 请求),这样就可使网页从服务器请求少量的信息,而不是整个页面。AJAX

19、可使因特网应用程序更小、更快,更友好。AJAX 是一种独立于 Web 服务器软件的浏览器技术。AJAX 基于下列 Web 标准:JavaScript XML HTML CSS 在 AJAX 中使用的 Web 标准已被良好定义,并被所有的主流浏览器支持。AJAX 应用程序独立于浏览器和平台。Web 应用程序较桌面应用程序有诸多优势;它们能够涉及广大的用户,它们更易安装及维护,也更易开发。 这些框架给开发人员更多的空间使得他们不需要担心跨浏览器的问题。虽然这些框架提升了开发人员构建应用的能力,但由于厂商已经开发了更细节的用户界面的打包组件解决方案,因此在AJAX组件市场中需要考虑一些其他因素。例如

20、提供通用用户界面的组件如组合框和数据栅格的几个厂商,都可以被用来在应用中创建良好的通过类似电子数据表方式来查看和编辑数据的体验。但这些组件不仅是封装了组件的用户界面而且包括与服务端数据的通讯方式,这些组件通常使用基于标记方式来实现如或JSF控件。(2)同步与异步异步传输是面向字符的传输,它的单位是字符;而同步传输是面向比特的传输,它的单位是桢,它传输的时候要求接受方和发送方的时钟是保持一致的。具体来说,异步传输是将比特分成小组来进行传送。一般每个小组是一个8位字符,在每个小组的头部和尾部都有一个开始位和一个停止位,它在传送过程中接收方和发送方的时钟不要求一致,也就是说,发送方可以在任何时刻发送

21、这些小组,而接收方并不知道它什么时候到达。一个最明显的例子就是计算机键盘和主机的通信,按下一个键的同时向主机发送一个8比特位的ASCII代 码,键盘可以在任何时刻发送代码,这取决于用户的输入速度,内部的硬件必须能够在任何时刻接收一个键入的字符。这是一个典型的异步传输过程。异步传输存在 一个潜在的问题,即接收方并不知道数据会在什么时候到达。在它检测到数据并做出响应之前,第一个比特已经过去了。这就像有人出乎意料地从后面走上来跟你说 话,而你没来得及反应过来,漏掉了最前面的几个词。因此,每次异步传输的信息都以一个起始位开头,它通知接收方数据已经到达了,这就给了接收方响应、接收 和缓存数据比特的时间;

22、在传输结束时,一个停止位表示该次传输信息的终止。按照惯例,空闲(没有传送数据)的线路实际携带着一个代表二进制1的信号。步传输的开始位使信号变成0,其他的比特位使信号随传输的数据信息而变化。最后,停止位使信号重新变回1,该信号一直保持到下一个开始位到达。例如在键盘上数字“1”,按照8比特位的扩展ASCII编码,将发送“00110001”,同时需要在8比特位的前面加一个起始位,后面一个停止位。同步传输的比特分组要大得多。它不是独立地发送每个字符,每个字符都有自己的开始位和停止位,而是把它们组合起来一起发送。我们将这些组合称为数据帧,或简称为帧。数据帧的第一部分包含一组同步字符,它是一个独特的比特组

23、合,类似于前面提到的起始位,用于通知接收方一个帧已经到达,但它同时还能确保接收方的采样速度和比特的到达速度保持一致,使收发双方进入同步。帧的最后一部分是一个帧结束标记。与同步字符一样,它也是一个独特的比特串,类似于前面提到的停止位,用于表示在下一帧开始之前没有别的即将到达的数据了。同步传输通常要比异步传输快速得多。接收方不必对每个字符进行开始和停止的操作。一旦检测到帧同步字符,它就在接下来的数据到达时接收它们。另外,同步传输的开销也比较少。例如,一个典型的帧可能有500字节(即4000比特)的数据,其中可能只包含100比特的开销。这时,增加的比特位使传输的比特总数增加2.5%,这与异步传输中2

24、5 %的增值要小得多。随着数据帧中实际数据比特位的增加,开销比特所占的百分比将相应地减少。但是,数据比特位越长,缓存数据所需要的缓冲区也越大,这就限制了一个帧的大小。另外,帧越大,它占据传输媒体的连续时间也越长。在极端的情况下,这将导致其他用户等得太久。(3) 传统的web与ajax的比较 传统的web应用允许用户填写表单(form),当提交表单时就向web服务器发送一个请求。服务器接收并处理传来的表单,然後返回一个新的网页。这个做 法浪费了许多带宽,因为在前後两个页面中的大部分HTML代码往往是相同的。由于每次应用的交互都需要向服务器发送请求,应用的响应时间就依赖于服务器的 响应时间。这导致

25、了用户界面的响应比本地应用慢得多。与此不同,AJAX应用可以仅向服务器发送并取回必需的数据,它使用SOAP或其它一些基于XML的web service接口,并在客户端采用JavaScript处理来自服务器的响应。因为在服务器和浏览器之间交换的数据大量减少,结果我们就能看到响应更快 的应用。同时很多的处理工作可以在发出请求的客户端机器上完成,所以Web服务器的处理时间也减少了。使用Ajax的最大优点,就是能在不更新整个页面的前提下维护数据。这使得Web应用程序更为迅捷地回应用户动作,并避免了在网络上发送那些没有改变过的信息。Ajax不需要任何浏览器插件,但需要用户允许JavaScript在浏览器

26、上执行。就像DHTML应用程序那样,Ajax应用程序必须在众多不同的 浏览器和平台上经过严格的测试。随着Ajax的成熟,一些简化Ajax使用方法的程序库也相继问世。同样,也出现了另一种辅助程序设计的技术,为那些不支 持JavaScript的用户提供替代功能。Ajax的无刷新重载,由于页面的变化没有刷新重载那么明显,所以容易给用户带来困扰用户不太清楚现在的数据是新的还是已经更新过的;现有的解决有:在相关位置提示、数据更新的区域设计得比较明显、数据更新后给用户提示等;在传统的Web应用模式中,页面中用户的每一次操作都将触发一次返回Web服务器的Http请求,服务器进行相应的处理后,返回HTML页面

27、给客户端,如图2-1所示。图2-1 Web应用的传统模型而在AJAX应用中,页面中用户的操作将通过AJAX引擎与服务器端进行通信,然后将返回结果提交给客户端页面的AJAX引擎,再由AJAX引擎来决定将这些数据显示到页面的制定位置,如图2-2所示。图2-2 Web应用中的AJAX模块2.2.3 SQL Server 2005 数据库介绍SQL Server 是一个关系数据库管理系统。它最初是由Microsoft Sybase 和Ashton-Tate三家公司共同开发的,于1988 年推出了第一个OS/2 版本。在Windows NT 推出后,Microsoft与Sybase 在SQL Serve

28、r 的开发上就分道扬镳了,Microsoft 将SQL Server 移植到Windows NT系统上,专注于开发推广SQL Server 的Windows NT 版本。Sybase 则较专注于SQL Server在UNIX 操作系统上的应SQL Server安装界面用。Microsoft SQL Server 2005 是一个完整的商务智能 (BI) 平台,其中为用户提供了可用于构建典型和创新的分析应用程序所需的各种特性、工具和功能。本文简要介绍了您在构建分析应用程序时将要用到的一些工具,并着重介绍了一些新增功能,这些新增功能使复杂 BI 系统的构建和管理比以往更加轻松。SQL Server

29、 2005 通过在可伸缩性、数据集成、开发工具和强大的分析等方面的革新更好的确立了微软在BI领域的领导地位。SQL Server 2005 能够把关键的信息及时的传递到组织内员工的手中,从而实现了可伸缩的商业智能。从CEO 到信息工作者,员工可以快速的、容易的处理数据,以更快更好的做出决策。SQL Server 2005全面的集成、分析和报表功能使企业能够提高他们已有应用的价值,即便这些应用是在不同的平台上。2.2.4 SQL语言SQL(Structured Query Language,结构查询语言)是一个功能强大的数据库语言。SQL通常使用于数据库的通讯。ANSI(美国国家标准学会)声称,

30、SQL是关系数据库管理系统的标准语言。SQL语句通常用于完成一些数据库的操作任务,比如在数据库中更新数据,或者从数据库中检索数据。使用SQL的常见关系数据库管理系统有:Oracle、Sybase、Microsoft SQL Server、Access等等。虽然绝大多数的数据库系统使用SQL,但是它们同样有它们自己另外的专有扩展功能用于它们的系统。但是,标准的SQL命令,比如Select、 Insert、 Update、 Delete、 Create和 Drop常常被用于完成绝大多数数据库的操作。MS SQL Server 就是用的Transact- SQL。SQL语言有着非常突出的优点,SQL

31、语言是非过程化的语言、统一的语言、是所有关系数据库的公共语言。非过程化语言:SQL是一个非过程化的语言,因为它一次处理一个记录,对数据提供自动导航。SQL允许用户在高层的数据结构上工作,而不对单个记录进行操作,可操作记录集,所有SQL 语句接受集合作为输入,返回集合作为输出。SQL的集合特性允许一条SQL语句的结果作为另一条SQL语句的输入。统一的语言:SQL可用于所有用户的DB活动模型,包括系统管理员、数据库管理员、 应用程序员、决策支持系统人员及许多其它类型的终端用户。所有关系数据库的公共语言:由于所有主要的关系数据库管理系统都支持SQL语言,用户可将使用SQL的技能从一个RDBMS(关系

32、数据库管理系统)转到另一个,所有用SQL编写的程序都是可以移植的。SQL为许多任务提供了命令,其中包括:查询数据、在表中插入、修改和删除记录、建立、修改和删除数据对象、控制对数据和数据对象的存取、保证数据库一致性和完整性等。以前的数据库管理系统为上述各类操作提供单独的语言,而SQL 将全部任务统一在一种语言中。SQL功能强大,是一种完备的数据处理语言,不仅用于数据库查询,而且用于数据库中的数据修改和更新,概括起来,它可以分成以下几组:DML(Data Manipulation Language,数据操作语言):用于检索或者修改数据;DDL(Data Definition Language,数据

33、定义语言): 用于定义数据的结构,比如 创建、修改或者删除数据库对象;DCL(Data Control Language,数据控制语言):用于定义数据库用户的权限。DML组可以细分为以下的几个语句:SELECT:用于检索数据;INSERT:用于增加数据到数据库;UPDATE:用于从数据库中修改现存的数据;DELETE:用于从数据库中删除数据。DDL语句可以用于创建用户和重建数据库对象。下面是DDL命令:CREATE TABLE,ALTER TABLE,DROP TABLE,CREATE INDEX,DROP INDEX2.2.5 IIS简介Internet Information Server

34、的缩写为(IIS)是一个World Wide Web server。Gopher server和FTP server全部包容在里面。 IIS意味着你能发布网页,并且有ASP(Active Server Pages)、JAVA、VBscript产生页面,有着一些扩展功能。IIS支持一些有趣的东西,象有编辑环境的界面(FRONTPAGE)、有全文检索功能的(INDEX SERVER)、有多媒体功能的(NET SHOW)。 其次,IIS是随Windows NT Server 4.0一起提供的文件和应用程序服务器,是在Windows NT Server上建立Internet服务器的基本组件。它与Win

35、dows NT Server完全集成,允许使用Windows NT Server内置的安全性以及NTFS文件系统建立强大灵活的Internet/Intranet站点。IIS(Internet Information Server,互联网信息服务)是一种Web(网页)服务组件,其中包括Web服务器、FTP服务器、NNTP服务器和SMTP服务器,分别用于网页浏览、文件传输、新闻服务和邮件发送等方面,它使得在网络(包括互联网和局域网)上发布信息成了一件很容易的事。3系统分析3.1需求分析3.1.1 系统需求分析在聊天系统,用户可以通过设置不同的用户名和密码以各种不同的身份进入聊天系统,用户的类型有两

36、种:普通用户和管理员。普通用户可以在聊天室中发送公聊信息,也可以和指定的聊天对象用户私聊,在不知道最近聊天室有哪些活动时,可以查看其他在用户在聊天室中的发言,以找到感兴趣的公聊话题,然后进行聊天。管理员在注册成为普通用户后就可以进入前台的聊天页面和普通用户一起聊天,具有普通用户的功能外,还可以使用用户名和密码进入后台管理系统。同时具有当有新用户进入聊天室时,实时更新在线用户的功能。聊天室的特点就是要求能够实时显示出聊天者所谈的内容。即在同一个聊天室的使用者,可以在短时间内立刻看到其他聊天者的发言。作为用户喜欢的Web应用程序,除了具有能够实时显示出聊天者所谈论的内容外,还应具有以多种方式发布信

37、息的功能。Ajax正好可以满足聊天室的这种要求,它可以异步的快速地创建和显示Web页面的动态内容,可以异步的刷新在线用户,使得用户在网页中能够得到实时的聊天信息。3.1.2系统可行性分析技术及开发方法可行性:由于本系统采用的是C#相关的技术具有“一处编译处处运行”的特性,所以系统能够跨平台使用,可运行于Linux/Unix和Windows系列等操作系统平台。管理可行性:模块化的设计方法,有助于系统开发过程的管理,因为科学合理的将整个程序划分多个功能模块,各模块单独设计,用助于降低整个程序的设计难度及减少错误程序的影响范围,各模块易于实现,又使整个程序易于衔接和修改。经济可行性:经过详细周密的调

38、研,采用功能强大的软件,借鉴成功的实例,及科学的开发方法,可以降低开发成本,达到经济高效的目的。3.2概要设计根据以上聊天系统的需求分析,本聊天系统总体上分为普通用户登陆的前台聊天子系统模块和后台管理员管理子系统模块。其中普通用户模块包括登录模块、聊天模块、退出模块,管理模块又包含各种聊天相关子功能模块,管理员模块包括登录模块、管理模块、退出模块,其中管理模块又包括管理系统对象的各个功能子模块。普通用户和管理员的退出聊天室模块机制是类似。系统总体模块框架划分及其关系如图3-1所示:图3-1系统总体模块架构在使用何种技术去开发系统的问题上,我们考虑到 Web浏览器是一个巨大的进步,它让同样的信息

39、在不同的机器上同样地显示。于是出现了浏览器/服务器模式(Browser/Server, B/S)的三层结构(如图3-2)。B/S模式的优点是维护方便,能够降低总体拥有成本。客户端运行软件,就像我们平时上网浏览网页一样,有个浏览器就行了,不用安装其它软件。B/S模式的软件所有的维护、升级工作都只在服务器上进行,而客户端就能获得最新版本的软件。采用三层结构可以是提高服务器的配置,降低客户端的配置。这样增加的只是一台服务器(应用服务和数据库服务可以放在同一台计算机电脑中)的价格,而降低的却是几十台客户端机器的价格,起到了降低总体拥有成本的作用。客户端应用服务数据库服务 图3-2三层结构(B/S结构)

40、由于本系统是毕业设计性质的,在实现过程中把当前比较流行和使用的系统的设计模式尽可能的应用的本次毕业当中,以达到提高个人专业和水平和专业知识的能力的目的。消息流转模块的基本原理是就是把每个连上同一网页的用户传送的发言数据储存起来,然后将所有的聊天室的发言数据传给该聊天室的每一用户。也就是说,用数据库汇集每个人的发言,并将数据库中的数据传给每一个人就实现了聊天系统最基本的功能。先从客户端收集消息,然后通过服务器端的消息管理中转,将全局消息发送给的所有用户。4.系统设计4.1 系统开发的目的和意义 创建一个网上聊天室,有助于提高网站的访问量,聊天室是一个聚集社区成员、召开网络会议的理想场所。随着计算

41、机网络的不断进步,聊天室对大家来说已经不再陌生,应用AJAX实现的无刷新聊天室更是流行。对于一个网站来说,当用户浏览网页时遇到不明白的地方,可以点击网页上的联系客服,系统会弹出一个机遇Web的聊天室,此时客服可以与用户进行详细的交流,大大加强的用户和网站之间的联系。4.2系统的功能结构设计4.2.1系统功能模块划分(1) 用户登录用户登录是采用游客加随机数的登录方法,并保存用户的IP地址。(2)用户性别选择非管理员用户在登录之前需选择自己的性别进行登录。(3) 用户修改个人信息用户登录聊天室系统可以修改自己的信息。(4) 进入聊天室用户登录系统进入聊天室就可以看到在线的所有用户并且在聊天室发言

42、。(5) 用户私聊用户登录后可以选择自己喜欢的其他用户进行私聊。(6) 管理员登录管理员是对整个网站后台数据库进行维护,是网站最重要的大门。只有管理员登录后才可以进行修改,别人无法访问。(7)管理员查看所有用户信息管理员登录系统后,可以查看所有在线的用户。(8)查看聊天记录管理员登录系统后,可以查看到用户的聊天记录看其是否违反规定。(9) 管理员查看聊天记录并进行删除业务模块功能如表4-1所示。表4-1业务功能模块表功能编号功能名称功能描述1游客登陆模块提供游客的随机账号2性别选择用户可根据自身情况选择自己的性别3聊天室模块提供用户进行交流、讨论功能4用户私聊用户可根据自己的爱好选择聊天室中的

43、其他用户私聊5管理员登录模块提供管理员登录6管理员查看个人信息模块管理员查看个人信息7管理员删除用户模块管理员删除用户账号8管理员查看聊天纪录模块管理员查看用户的聊天记录9管理员删除聊天记录模块管理员可以删除用户的聊天记录根据以上主要功能的阐述,系统功能模块图如图4-2所示。图4-2 系统功能模块图4.2.2 系统流程图为了更清晰地表现该系统的功能,提供了不同使用者不同权限的流程图。图4-3为普通用户系统流程图,普通用户具有用户群聊、用户私聊等权限。图4-3 普通用户系统流程图图4-3为管理员系统流程图,管理员具有私聊、群聊、查看并删除聊天记录、踢人出聊天室等权限。 图4-3 管理员系统流程图

44、 4.3 ScriptManagerScriptManager控件时服务器ASP.NET AJAX模型的大脑,它是一个在页面上没有任何可视界面的Web控件。但是,它执行一个主要的任务它呈现到ASP.NET AJAX javaScript库的链接。用户可以将ScriptManager控件视为AJAX脚本管理员,有了管理员才能够让Page局部更新起作用,浏览器所需要的JavaScript才会自动管理。因此开发AJAX网站时,每个页面中必须添加一个ScriptManager控件,以便局部更新网页中得数据,并与服务器的程序沟通。4.3.1 局部更新面板UpdatePanel控件UpdatePanel控

45、件和ScriptManager控件一起工作。在能够使用UpdatePanel前,需要添加一个ScriptManager脚本管理控件,然后便可以向页面中添加一个或者多个UpdatePanel控件。UpdatePanel控件在其生命周期里只有一个较色,作为异步刷新内容的容器。所以,不用讲所有的东西全都放进UpdatePanel中,只需将服务器端更新内容的控件放入UpdatePanel即可。4.3.2 定时器操作控件Timer控件在应用UpdatePanel控件实现页面局部更新时,用户必须初始化一个一般情况下会回发的动作,如单击按钮。但在实际应用中,用户可能会希望在没有动作的情况下自动完成一个事件。

46、Timer控件的使用非常简单,其中比较重要的属性就是Interval及Enabled。 4.4数据库设计4.4.1数据库概念结构设计本系统的实体分别是普通用户、管理员和聊天信息关系图,其实体属性图如图4-1、图4-2和图4-3所示:图4-1图4-2图4-34.4.2数据表设计作为网络的一个重要应用,数据库在网站建设与网络营销中发挥着重要的作用,与普通网站相对而言,具有数据库功能的网站网页我们通常称为动态页面,也就是说页面不是一层不变的,页面上内容(或部分内容)是动态生成的,它可以根据数据库中相应部分内容的调整而变化,使网站内容更灵活,维护更方便,更新更便捷。本系统采所需要的数据库结构如表4-4所示。表4-4 数据库结构表序号表名说明1管理员信息表(tb_Admin)描述管理员的基本信息2聊天记录表(tb_matter)描述聊天记录的信息3用户登陆信息表(tb_user)描述用户登陆的信息4.4.3 数据库表设计管理员信息表(tb_Admin)如表4-5所示。表4-5 管理员信息表(tb_Admin)字段名称类型是否主键描述idintY管理员编号namevarcharN管理员名称pwdvarcharN管理员密码infotimedat

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号