基于bs的qq聊天软件的设计与实现本科论文.docx

上传人:b****9 文档编号:25225892 上传时间:2023-06-06 格式:DOCX 页数:36 大小:480.75KB
下载 相关 举报
基于bs的qq聊天软件的设计与实现本科论文.docx_第1页
第1页 / 共36页
基于bs的qq聊天软件的设计与实现本科论文.docx_第2页
第2页 / 共36页
基于bs的qq聊天软件的设计与实现本科论文.docx_第3页
第3页 / 共36页
基于bs的qq聊天软件的设计与实现本科论文.docx_第4页
第4页 / 共36页
基于bs的qq聊天软件的设计与实现本科论文.docx_第5页
第5页 / 共36页
点击查看更多>>
下载资源
资源描述

基于bs的qq聊天软件的设计与实现本科论文.docx

《基于bs的qq聊天软件的设计与实现本科论文.docx》由会员分享,可在线阅读,更多相关《基于bs的qq聊天软件的设计与实现本科论文.docx(36页珍藏版)》请在冰豆网上搜索。

基于bs的qq聊天软件的设计与实现本科论文.docx

基于bs的qq聊天软件的设计与实现本科论文

2014届毕业设计说明书

基于B/S的QQ聊天软件的设计与实现

院部:

计算机与信息科学学院

学生姓名:

指导教师:

职称

指导教师:

职称

专业:

计算机科学与技术

班级:

完成时间:

2014-5

摘要

在当今社会,随着网络的逐渐普及,互联网已经成为人们生活中必不可少的一部分,人们能够从互连网上获取所需要的信息并且通过互联网与朋友亲人交流,随着网络应用越来越广泛,如何快速获取所需要的信息已经成为时下必须要解决的问题。

要开发一个聊天室,首先,在我们脑海中,要有这个聊天室的初步的整体概况。

在诸多的公共聊天室中,其核心功能无非都是注册登录、群聊私聊、找回密码、退出,而管理员的核心功能大多数是登录、用户资料管理、在线用户管理、聊天记录管理等功能。

在聊天页面中,浏览器不断的对文本或数据库进行刷新、读取,并进行实时更新在线的用户。

本聊天室系统由JSP技术与MySQL数据库相结合基于B/S模式开发完成,以Struts2框架作为主要的技术框架,以MyEclipse8.5作为开发工具,以apache-tomcat-6.0.28做为服务器。

本聊天室系统的主要有普通用户和管理员两个角色,普通用户主要有注册登录、找回密码、群聊私聊、字体设置、背景颜色设置、在线音乐试听、退出这几个功能;管理员的主要功能有登录、在线用户管理、用户资料管理、过滤字段管理、聊天记录管理、音乐管理。

关键词:

B/S;数据库;聊天室;MySQL

 

 

ABSTRACT

Intoday'ssociety,withthegrowingpopularityoftheInternet,theInternethasbecomeanessentialpartofpeople'slife,peoplecanfindneededinformationfromtheInternetandcommunicationthroughtheInternetwiththefriend'scloserelatives,alongwiththenetworkapplicationmoreandmorewidely,howtoquicklygettheinformationtheyneedtohavebecomenowadaysmustsolvetheproblem.Todevelopachatroom,firstofall,inourmind,tohavethegeneralsituationofthepreliminaryoverallchatrooms.Inmanypublicchatroom,itscorefunctionisnothingbutaregisteredlogin,groupofprivatechat,retrievepassword,exit,andthecorefunctionoftheadministratorismostlogin,userinformationmanagement,usermanagement,onlinechatrecordsmanagement,andotherfunctions.Inthechatpage,browsertorefresh,readingofthetextordatabase,real-timeupdateandon-lineusers.

ThischatroomsystemcombinedbytheJSPtechnologyandMySQLdatabasebasedonB/Spatterndevelopmentiscomplete,withtheStruts2framework,asthemaintechnicalframework,toMyEclipse8.5asadevelopmenttool,withapachetomcat--6.0.28asaserver.Thischatroomsystemmainlyhastworolesordinaryusersandadministratorsandordinaryusersareregisteredlogin,retrievepassword,groupofprivatechat,font,backgroundcolorSettings,onlinemusicaudition,exitthisafewfunctions;Themainfunctionoftheadministratorlogin,onlineusermanagement,userinformationmanagement,filtering,fieldmanagement,chatrecordsmanagement,music.

Keyword:

b/s;database;chatroom;mysql

 

 

1概述

在网络世界中,聊天室(ChatRoom)是一个最常见的服务,它最早起源于BBS站点,聊天室作为一个在漫漫长夜打发消遣时间的最佳软件,除了能够用于聊天消遣时间以外,还拥有语音聊天、视频聊天、共享图片、文件等功能。

现在随着网络的发展,聊天室发展的速度已经非常迅速了,现在的聊天室技术,都已经运用到了“网络会议”上,现在有很多的会议在网上视频聊天会议[9]。

在市面上,聊天室的应用软件出现得比较早,比如说,MicrosoftChat,一个在界面及功能方面都已经非常完善的“聊天室”的应用软件,它是一套独立于浏览器之外的,即与浏览器无关的,需要下载客户端安装使用的套装软件,在使用它之前还需要先熟悉其中的操作界面,才能够使用这个软件,这对于新时代匆匆忙忙,并没有太多时间去学习的网友来说,是一个非常不方便的缺陷。

因此,开发出来一个操作简单,方便,不需要下载客户端安装使用的聊天软件已经成为广大网民的迫切需求。

所以,根据网民的需求,越来越多的公司和网站开始开发基于浏览器的,不需要下载客户端安装使用,不需要熟悉界面操作的聊天室,以便造福更多的网友[12]。

1.1研究开发背景

由于电子科技的迅速发展,网络时代到来,人们通讯方式也不断的发生改变,从以前的写信到后来的呼机,到现在的手机,不断地往高科技方向发展。

然而人们的聊天的方式也在发生改变,因此聊天室也随之慢慢的发展起来了,慢慢受到人们喜爱,现在我们QQ中就有各种各样的群,有的娱乐、有的技术交流、有的用来工作,总之应用非常广。

聊天室的开发是有必要的,其发展的前景也是非常大的。

聊天室现在用于娱乐方面还是比较少的,主要还是用于商业方面,就目前聊天室的市场结构来看,现在大多数的网站几乎都拥有一个完全属于自己的聊天室,现在的聊天室,运作起来是非常的简单,当然也有非常复杂的,如像QQ和YY那种聊天的工具。

在国外,现在就一个普通的商务网上或者娱乐网站都有属于自己的聊天工具。

聊天室的之所以这么普及主要有两个原因:

一、由于现在这方面的技术已经是相当的成熟,开发这种软件的成本高;二、聊天这种软件不管是运作起来还使用起来都是比较方便的。

所有很受人们的欢迎,现在都有很多专门做这种软件的公司了。

在我国,聊天室市场集中度还不是很高,其中只有一些大型的商业网站或者一些专门娱乐性的网站才有,所有在我国的市场还是相当的大。

在我国,由于现在的电脑的价格非常的便宜,人们的生活水平的提高,对网络的需要越来越大,除了在网上玩游戏、谈生意、购物、查阅资料以外,还有就是用于聊天娱乐,当我们身处在一个群体当中的时候,不管是在工作还是在学习中也好,我们都会建立起一个属于自己的聊天室,它的聊天功能是聊天室中运用最广的功能,这是网上最受欢迎和最普通以中聊天方式。

聊天具有应用广泛、开发简单、操作方便、功能齐全、信息传递、简单快捷等的特独有性,因为它是用文字来传播信息,所有用于聊天时候的信息交流比较方便,相当于人与人面对面的交流,受到大多数人喜欢,因此有很多人喜欢在聊天室中聊天,还没面对面那种羞涩[2]。

1.2选题的意义

现在的通讯系统,除了我们生活中用于正常交流和联系以外,在现在的商业中也慢慢的兴起,运用到网上交易中,聊天室为客户与客户之间的沟通提供了一个有效交流平台,使得与客户之间的聊天没有时间和空间的距离感。

在时间上,这边发一条信息到另外一边所用的时间只需要不到1秒的时间,几乎是立即得到响应,比发送一份邮件的信息传递速度快了几百倍,非常的节省时间;在经济上,我们打电话是按时间分钟来计费的,如果是长途电话的话更贵,而我们的聊天室是通过互联网来接通的,价格十分便宜。

当然我们不能否定邮件和电话,在用于不同的地方,它们又比聊天室好。

基于B/S的聊天室是浏览器/服务的,与基于C/S架构的腾讯QQ等聊天软件相比起来,这种B/S[7]架构的聊天室,是不需要下载安装,直接是在浏览器上运行。

因此,对于一个公司和企业来说,开发一个用于网站、娱乐或者论坛来交流的聊天室,其中包括群聊和私聊,成为了现在众多公司或集体的重要需求[14]。

这次开发的基于B/S架构的聊天室,是用现在流行JAVA[1]语言来开发的,用MyEclipse8.5作为开发平台,因为MyEclipse8.5开发B/S[6]架构运行在浏览器上的系统比较方便,并且用到的数据库是当前非常受欢迎的MySQL数据,作为后台数据库存储一些信息,建立一些表格。

现在的随着WEB技术不断加强,B/S架构的设计模式开始流行起来,因为B/S架构的是网页版的,作为客户端只需要在浏览器上操作,没有下载安装客户端的说法。

B/S模式将实现系统核心功能的代码全部都放着到服务器上,只有该系统的服务器够强大就可以无限的运行,如果客户端崩溃,也只是在浏览器上而已,只需要重新打开一个页面就可以了,从某种一定程度上,这个系统只需要开发一个强大的服务器,从而简化了系统的开发和维护。

基于B/S架构的聊天室系统,与那些C/S[8]模式聊天室相比较,最大的优点:

只要你有浏览器,就可以随时随地进行聊天,而不需要下载安装客户端,从而实现了客户端零安装、零维护的需求,提高了其中的效率[6]。

1.3国内外研究现状

随着互联网的发展以及普及,网络聊天软件逐渐成为网络用户必备的联络工具,它为广大网民提供了一种方便快捷的沟通方式,而网络聊天室作为出现最早,也是操作简单的网上聊天方式,受到了众多网民的追捧。

在国内,1999年2月,深圳腾讯公司正式发布OICQ99betabuild0210,开通腾讯网络聊天服务。

2000年5月,腾讯QQ在线人数已经突破10万。

2001年2月l0日,腾讯QQ在线人数已经突破100万。

2004年4月份,腾讯QQ在线人数的最高记录已经突破了600万,现在腾讯公司正在把网络聊天系统往移动聊天方向扩展,如今已经将网络聊天与手机短信息(SMS)成功结合起来。

如今网络聊天软件涉及和影响的范围越来越广,其竞争也越来越激烈。

在国外,MSN——借助和Windows操作系统的绑定似乎已是使用最广泛的聊天软件。

使用MSN,可以通过文本、语音、视频与朋友、亲人聊天,还可以与朋友、亲人传输文件,共享图片等。

但是,这些聊天软件都是基于C/S架构的,都需要通过下载客户端进行安装使用,在更新方面也需要下载更新,而且用户名、密码和聊天记录等都是存在本地机器上的,在安全性和方便性方面都有所欠缺。

Browser/Server(浏览器/服务器)结构,是随互联网技术伴生的,是对C/S架构的进行改进的一种结构。

在这种结构下,用户不需要通过下载客户端安装使用和更新,只需要有浏览器就可以实现,而且可以随时随地地使用,不会受到时间与地域的影响。

与C/S相比,B/S的优势是B/S是建立在广域网之上的,一般情况下只要有操作系统和浏览器就可以了,不需要有专门的网络硬件环境,而C/S则是建立在专用网络上的,必须是小范围网络环境,所以,B/S架构的聊天室开发起来比C/S架构的要简单,容易。

而且B/S架构的聊天室实现了系统的无缝升级,系统维护开销小。

最主要的是B/S架构的聊天室是基于浏览器的,与操作平台无关,所以不需要考虑兼容性问题[6]。

1.4本文组织结构

本文围绕着开发一个基于B/S的QQ聊天软件,描述了完成开发这个系统的主要流程,本文分为以下几部分:

第1章介绍的是基于B/S的QQ聊天软件的研发背景、选题意义和国内外现状;

第2章介绍的是QQ聊天软件要使用的开发环境、开发工具以及要使用到的技术;

第3章介绍的是QQ聊天软件的需求分析;

第4章介绍的是系统的设计与及系统需要有的功能模块;

第5章介绍的是数据库的设计与创建;

第6章介绍的是系统的详细设计与实现;

第7章主要是对本系统进行测试,证明系统的可行性。

2开发工具及技术介绍

2.1开发环境

系统名:

基于B/S的QQ聊天软件的设计与实现

操作系统:

windows732位

硬件支持:

CPU英特尔Corei5-480M(双核)

内存6GB

显卡ATI/AMDRadeonHD64x0M/74x0M

2.2系统开发工具

开发工具:

MyEclipse8.5

服务器:

apache-tomcat-6.0.28

数据库:

MySQL

2.3B/S结构的简介

在传统的两层的C/S结构中,随着技术慢慢的发展出现了它的局限性,C/S结构模式比较适合于那种系统规模比较小、用户也比较少、而且数据库还是单一的情况下,并且运行的网络环境必须是安全的和快速(例如局域网)。

由于网络技术的发展之快,所运行的应用系统的规模在慢慢的扩大,其中的复杂性越来越高,在现在多用户、多数据库、多接口的系统中,并且网络环境下也是非安全的(例如:

Internet)的网络环境中,传统的两层C/S结构的应用模型无法满足现状,跟不上时代步伐,而且这种模式是单一的服务器,主要以局域网为中心的,因此想要把传统的模式扩展至大型企业的广域网或强大的Intranet中是不可能的,因此B/S体系结构三层客户/服务器模式随之兴起,成为当今最受欢迎的一种体系结构[8]。

三层客户/服务器模式是称之为B/S体系结构,是在以前传统两层的C/S结构模式的集成上,增加了一级成为了现在流行的三层客户/服务器模式。

B/S体系结构在逻辑上将应用功能分为3层,分别是显示层、业务层、数据层。

客户显示层是服务有客户端的,为客户的图形界面功能提供相对应的应用服务的,从而帮助客户迅速快捷的定位于应用服务。

业务逻辑层是在显示层和数据层之间,是为企业实现该企业的业务逻辑提,专门的设计供的一个明确有效的层次,具有一定的逻辑性,在这个层次中,封装了与系统相关联的应用模型,同时把显示层和数据库代码部分的数据层区分开来数据层是三层模式中最底层的结构,这个层的主要目的是用来定义、维护、访问和更新数据,简单的说,就是管理数据库的,同时管理和满足应用服务对数据库发送的一系列请求,维护数据库得管理。

这种三层体系结构关系如图1所示:

图1B/S三层架构示意图

2.4MySQL简介  

MySQL数据库是一个精巧的SQL数据库管理系统,这个数据库相对其他那些数据库来说,是非常小的。

MySQL数据库很容易安装,它是在DOC命令的窗口运行的,但是它是具有强大的数据开发和维护功能、源代码开发的关系型数据库管理系统,还有就是这个数据库管理系统具有非常强灵活性和丰富的应用编程接口以及精巧的系统结构性。

同时运用起来不占什么内存,还有他它快速,健壮和易用的特性,同时所用到经济成本也是非常的地,所以现在那些小型的企业的数据库基本上都采用这种数据库管理系统,其中的主要原因上面以及介绍了。

所以在现在的那些小型的项目中,基本都会选择这种数据。

SQL是一种标准化的语言,它不仅在MySQL数据库能运行还能在SQLServer中运行,所以MySQL数据库的SQL语言是可以在其他数据中使用。

同时MySQL还能够足够快和灵活存储记录文件和图像等属性,可见这个数据库得功能之强大[11]。

MySQL数据库软件有几个版本,分别是标准版、企业版和集群版3个版本。

MySQL数据库的主要特点是体积小、速度快和成本低3个特点,其中在成本低MySQL数据库优势下,它的局限性已经不是什么问题了,而且它能满足现在的那些中小型的系统或者网站,所以,使得一般中小型网站的开发都会选择MySQL作为网站数据库。

同时MySQL数据库相比其他的数据而言,在相同的运行环境中,可能维护起来会比较的容易些,所以在数据维护方面的,所需要的人力和财力会减少很多,减少了企业的开支[16]。

3系统需求分析

3.1综合需求

通过调查可以得知,在本系统中,用户的类型有两种:

普通用户和管理员。

普通用户可以通过注册用户名,进入聊天系统,在聊天室中可以给所有人发送群聊信息,也可以和聊天室中的某个在线用户进行私聊。

管理员在注册成为普通用户以后也可以进入前台的聊天页面,跟普通用户一样,进行聊天。

管理员除了具有普通用户的功能外,还可以通过管理员的身份进入后台管理系统,对系统进行管理和维护。

聊天室的最大特点就是能够对聊天内容进行实时刷新,能够实时显示聊天内容。

即在同一个聊天室的使用者,可以在短时间内立刻看到其他聊天者的发言,并且能够通过实时刷新看到在线人数列表。

本系统有普通用户和管理员两个角色。

在系统中,普通用户实现的功能有用户注册、用户登录、找回密码、进入聊天室聊天、试听音乐等功能。

聊天时,用户可以设置字体的大小、颜色等,实时显示聊天信息,并且实时显示在线聊天的人员列表,好友状态,用户还可以手动更换背景颜色。

同时,系统还有支持用户在线播放音乐的功能。

管理员除了可以以普通用户的身份实现普通用户的功能以外,还可以以管理员的身份实现管理员的功能。

管理员实现的功能有剔除普通用户、过滤非法聊天内容、用户资料管理、在线用户管理、导出聊天记录、上传音乐文件等功能。

本系统旨在实现在线实时聊天功能,为用户提供方便快捷的交流方式,这在具体体现,将会在系统实现中体现和扩展。

3.2系统可行性分析

可行性分析是根据初步的调查结果,对系统开发做出可行与否的结论的过程。

可行性分析从技术可行性、经济可行性、管理可行性三方面进行分析,论证该系统是否可行。

3.2.1技术及开发方法可行性

本系统的开发采用Java[3]语言和JSP[10]相关技术,JSP具有一处编译,到处运行的特性,而Java语言是面向对象的语言,它具有与平台无关的特性,所以系统能够跨平台使用,可运行于Linux/Unix和Windows系列等各种操作系统平台。

3.2.2管理可行性

使用模块化的设计方法,有助于系统开发过程的管理,因为模块化的设计方法就是科学合理的将整个程序划分为N个功能模块,各个功能模块单独设计,互不影响。

这种设计方法有助于降低整个程序的设计难度及减少错误程序的影响范围,也使得各个功能模块容易实现,而且整个程序修改容易,不会因为其中一个功能模块出现错误而影响整个系统。

3.2.3经济可行性

经过详细周密的调查,借鉴成功的开发案例,采用科学有效的开发方式,可以降低开发的成本,达到经济高效的目的。

本系统在开发方面主要使用了MyEclipse8.5、apache-tomcat-6.0.28、MySQL等软件,而这些软件在网上均可以免费下载,因此,在开发成本方面可以说是非常低,所以,该系统在经济方面可行。

3.3功能需求

经过详细的调查,首先可以确定的是系统需要有“普通用户”和“管理员”这两个角色。

3.3.1用例分析

管理员主要负责对系统中用户进行管理和维护,普通用户主要负责对聊天界面进行设置以及进行聊天和聊天的设置,以上两个实体的主要功能如下图所示:

表1基本用例

实体功能

普通用户注册、登录

聊天、设置字体的大小,颜色、设置背景颜色、试听音乐

管理员登录、管理在线用户、管理聊天记录、管理音乐文件

根据分析,系统中的两个实体,“普通用户”和“管理员”的用例图如下图所示:

图2系统用例图

3.3.2场景分析

(1)用户注册场景

用户输入注册要填写的内容后,点击注册进行验证,如果验证合法,则会对后台数据库做数据的插入操作,插入成功后,即注册成功,跳转到登录页面,否则继续停留在注册页面。

用户注册的顺序图如图3所示:

图3用户注册顺序图

 

(2)用户登录场景

用户输入用户名和密码后,后台数据对用户输入的数据进行验证判断,如果后台数据库存在该用户,且密码正确,则跳转到聊天页面,否则登录失败,继续停留在登录页面。

用户登录的顺序图如图4所示:

图4用户登录顺序图

4系统设计

4.1系统总体设计

根据以上聊天系统的需求分析,本聊天系统可将模块分为普通用户登陆的前台聊天子系统模块和后台管理员管理子系统模块。

其中普通用户模块包括登录模块、聊天模块、退出模块,聊天模块又包含各种聊天相关功能的子功能模块和在线歌曲试听的子功能模块,管理员模块包括登录模块、管理模块、退出模块,其中管理模块又包括管理系统用户的各个功能子模块和管理歌曲的各个功能子模块。

普通用户和管理员的退出聊天室模块机制是类似。

系统总体模块框架划分如图5所示:

图5系统总体模块架构

4.2系统功能模块

本系统在J2EE[4]平台下使用B/S架构进行设计,MySQL作为后台数据库,实现管理员对聊天室的管理、用户登陆聊天室聊天等功能的管理和实现,包括前台模块和后台管理模块。

本聊天室系统使用MyEclipse软件开发,以Struts2[5]框架作为主要的技术框架,以JSP技术编写页面。

作为一个只需要WEB[2]浏览器,不需要下载客户端就能实现的聊天室,虽然不需要客户端的存在,但是在前台依然必须要具备基本的用户注册、登陆功能。

4.2.1前台页面的模块

在前台模块中,用户只有通过注册账号后,拥有了账号才能登陆,在登录模块中用户输入了注册好的账号与密码,通过验证后,进入到聊天模块,在聊天模块中,可以进行字体大小、颜色的设置,可以改变页面的背景颜色,可以发送表情,除了这些以外,还有音乐试听模块。

前台页面的模块又可以分为登陆模块和聊天模块。

登陆模块其中包括了用户注册账号,合法注册用户登陆账号,找回密码,资料修改等等。

(1)用户注册模块

用户将个人信息填写完整,点击注册进行验证,如果验证合法,对数据库做插入操作,插入成功,则完成注册,完成注册后页面跳转到登陆页面,如果验证没有通过,则继续停留在注册页面。

(2)登陆账号模块

当用户输入用户名和密码后,点击登录对输入的信息进行验证,即查看数据库是否存在该用户,若存在,则对密码进行核对,若密码正确,则登陆到聊天界面,否则停留在登录界面。

(3)找回密码模块

当用户忘记密码时,通过注册时填写的问题以及问题的答案找回密码。

点击找回密码,跳到下一步页面,输入要找回密码的用户的用户名,点击下一步,根据输入的用户名,查找到用户注册时输入的密码提示问题,并填入密码提示问题的答案,点击下一步,进行验证,若输入答案错误,则跳到登录页面,若答案正确,则跳到下一步的页面,输入新密码,点击下一步,完成密码修改,跳到登录页面。

聊天界面则包括一个用户与另一个用户之间的私聊,一个用户与多用户之间的群聊,设置修改字体、字号、颜色、变换背景色、音乐试听等功能。

聊天室的前台功能模块划分图如图6所示:

4.2.2后台页面

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

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1