JQQ即时通讯系统的设计与实现.doc
《JQQ即时通讯系统的设计与实现.doc》由会员分享,可在线阅读,更多相关《JQQ即时通讯系统的设计与实现.doc(34页珍藏版)》请在沃文网上搜索。
1、JQQ即时通讯系统的设计与实现JQQ即时通讯系统的设计与实现 摘 要运用Internet和Java开发技术,采用C/S模式,建立一个基于应用的即时通讯系统。本系统实现了用户注册,用户登陆,分组管理,好友管理,查询用户,用户即时通讯,查看聊天记录等功能。用户注册是通过系统来添加新的用户;用户登录用来验证用户的信息是否合法;分组管理功能主要是对分组的管理,如添加分组、删除分组等;好友管理功能主要是对好友的管理,如添加好友、删除好友等;查询用户是查询所有已注册的用户以便加为好友进行通讯;用户即时通讯使成为好友的双方可以即时在线交流;查看聊天记录保存了与好友通讯的所有记录。关键词即时通讯系统;C/S模
2、式;TCP;UDPJQQ instant messaging system design and ImplementationComputer Science and Technology MajorAbstract: The use of Internet and Java development technologies, using C / S mode, a real-time communication system based on application. The system implements user registration, user login, group adm
3、inistration, friends manage, query user, instant messaging, view the chat history. User registration is through the system to add new users; user login used to authenticate the users information is legitimate; group management functions mainly for the management of groups, such as adding a group, de
4、lete group, etc.; friends management functions mainly for friends management, such as adding friends, remove friends, etc.; query the user is the query to all registered users to add as friends to communicate; users to instant messaging to become friends of the two sides can exchange real-time onlin
5、e; view chat history with a good save Friends of the communication of all records.Key words: Instant messaging system; C / S mode; TCP; UDP目 录1 绪论11.1 项目背景11.2 国内外研究现状11.3 预期目标和经济效益21.4 课题简要介绍31.5系统创新点32 需求分析32.1 功能需求32.1.1 用户管理32.1.2 分组管理42.1.3 好友管理42.1.4 即时通讯52.2 通讯模型的特点52.2.1 适用性52.2.2 扩展性52.3 可行
6、性研究52.3.1 技术可行性分析52.3.2 不确定性分析62.3.3 分析结论62.4 运行环境63 概要设计63.1 框架设计63.2 拓扑结构73.3 功能设计93.2.1 用户注册模块93.2.2 用户登录模块103.2.3分组管理模块103.2.4 好友管理模块103.2.5 查询用户模块113.2.6 即时通讯模块113.2.7 聊天记录模块123.4 设计原则及一般要求124 系统设计124.1 模块设计124.2 即时通讯系统关系型数据库的实现124.2.1 数据库分析134.2.2 数据库概念设计134.2.3 数据库逻辑结构设计145 系统实现155.1 注册模块155.
7、2 登录模块175.3 分组管理模块185.3.1添加分组185.3.2删除分组205.4 好友管理模块215.4.1 添加好友215.4.2 删除好友235.5 查询用户模块245.6 即时通讯模块255.7 聊天记录模块266 测试报告286.1 测试基本要求286.1.1 内容检查286.1.2 易用性测试286.1.3 功能检查286.1.4 容错性测试286.2测试用例方法举例296.2.1 功能测试296.2.3 性能测试29结论及尚存在的问题30参考文献30致谢31JQQ即时通讯系统的设计与实现1 绪论即时通讯软件的出现正在逐渐改变人们的沟通与交际方式。无论近在咫尺,还是远隔重洋
8、,通讯也只是在键盘和鼠标之间就可以解决问题。即时通讯服务非常适合企业内部或企业和客户之间的交流。网络聊天程序.越来越影响着我们的网络生活。随着全球信息化进程的不断发展,网络也在飞速发展。出于高效、快速地处理各种事务的目的,越来越多的企业和单位在其内部使用局域网来进行工作和交流。在内部局域网的帮助下,企业得以简化信息流程,提高信息交换的速度,从而提高工作效率。然而,随着局域网规模的扩大,业务量的增加,在局域网上运行的应用越来越多,如知识库、网络会议、数据库应用和数据的同步与备份等,这些应用对局域网的信息吞吐、处理能力的要求也越来越高。这些在原有局域网设计之初未曾考虑到的新情况的出现使得局域网不堪
9、重负,容易发生信息阻塞,此时,局域网不但不能提高生产效率,反而成为工作效率的瓶颈。基于Socket的局域网聊天室是局域网通信软件的具体实例之一,它很好地诠释了Socket通信的原理,并且在局域网部通信、教学、讨论等应用中都具有一定的实用价值。它具有信息收发速度快,保密性好,占用网络带宽资源低,占用服务器吞吐能力低,易于编程实现等优点。1.1 项目背景即时聊天使亲友的沟通突破时空极限,使人与人的沟通突破上下级极限,使陌生人的沟通突破环境极限,使自我与外界的沟通突破心理极限 作为使用频率最高的网络软件,即时聊天已经突破了作为技术工具的极限,被认为是现代交流方式的象征,并构建起一种新的社会关系。它是
10、迄今为止对人类社会生活改变最为深刻的一种网络新形态,没有极限的沟通将带来没有极限的生活。 聊天一直是网民们上网的主要活动之一,网上聊天的主要工具已经从初期的聊天室、论坛变为以MSN、OICQ(又称QQ)为代表的即时通讯软件。迄今为止,全球约有一亿多人使用即时通讯软件在网上交流。中国网民惯用的即时聊天工具腾讯QQ从1999年2月诞生到现在,注册用户已超过1.6亿,在线用户最高时超过200万人,而每天独立上线人数更是达到一千二百多万,拥有活跃用户5500万,几乎覆盖所有中国网民。 即时通讯工具使用频率之高,超出任何一种网络软件。电子邮件曾是最重要的通讯交流工具,是互联网最早的“杀手级应用。到200
11、4年,即时通讯软件已取代电子邮件,成为最流行的互联网通讯工具1.2 国内外研究现状即时通讯软件,几乎是每一个上网用户都必备的联络工具。即时通讯软件除了能够让您迅速地在网上找到自己的朋友和工作伙伴,还可以实时交谈和传递信息,而且,现在不少即时通讯软件还集成了文件共享、语音聊天、网络会议等功能。截止到目前,全球约有近3亿多人使用即时通讯软件进行交流,正因为即时通讯软件拥有数以亿计的用户和迅速增长的市场,所以各个公司都盯上了中国这个潜在的最大市场,一时间,即时通讯市场硝烟四起。除了腾讯QQ和国外的几款著名即时通讯软件纷纷推出新版本,网易也推出了一种新的即时通讯软件网易泡泡。朗玛公司也推出了名为UC的
12、通讯工具。即时通讯软件最早发布于1996年11月15日,以色列特拉维文的Mirabilis Ltd.发表了一个题为E.T SURF HOME:MIRABILIS LTD. PROVIDES NEW SOLUTIONS FOR PEER-TO-PEER INTERNET COMMUNICATIONS的新闻稿,同时发布了他们新产品ICQ(I Seek You)的Beta测试版。这天标志着Internet上的第一个成热的即时通讯系统(Instant Message System)的诞生。即时通讯服务在诞生之后的几年时间得到了迅猛发展,成为新增Internet用户的3个主要应用之一(WEB,电子邮件和
13、即时通讯)。在国内,1999年2月,深圳腾讯公司正式发布OICQ99 beta build 0210,开通腾讯即时通讯服务。2000年5月,腾讯QQ同时在线用户突破10万;2001年2月l0日,腾讯QQ同时在线用户突破100万。2004年4月份腾讯QQ同时在线人数最高记录已经突破了600万大关,现在腾讯公司正在把即时通讯系统往移动通讯方向扩展,如今已经将即时通讯与手机短信息(SMS)成功结合起来。即时通讯软件涉及和影响的领域已近越来越广,其竞争也越来越激烈。国内QQ最大的敌手朗玛UC从2001年开始研发,2002年的12月份UC正式发布,并且首创了很多技术:UC是国内第一个做场景聊天的;UC是
14、第一个把同学录和校友录结合的;第一个把即时通讯与休闲游戏相结合的;第一个把发送动画与即时通讯相结合的。在一年的发展里,UC一度达到峰值在线30万人,注册用户达到7000万。纵观即时通讯软件业的迅速发展,设计并开发一个即时通讯平台,对于现阶段的学习和研究,都是极为有意义的,基于这个前提和起因,我选择了设计一个名为JQQ的即时通讯系统作为我的毕业设计。1.3 预期目标和经济效益即时通讯简称IM(Instant Messaging),它是一种面向终端使用者的网络沟通工具服务,使用者可以通过安装了即时通信的终端机进行两人或多人之间的实时沟通。即时通信利用的是互联网线路,通过文字、语音、视频、文件的信息
15、交流与互动,有效节省了沟通双方的时间与经济成本。即时通信不再是一个单纯的聊天工具,它已经发展成集交流、资讯、娱乐、搜索、电子商务、办公协作和企业客户服务等为一体的综合化信息平台。即时通讯系统一旦开发完成,只需要一些基本维护和简单扩展的费用,产生的经济效益源源不断,相当乐观,有着很广阔的发展前景。1.4 课题简要介绍本课题之前:充分调查了市场主流类似通讯软件的优点与缺点;对大数操作者的年龄、职业、文化层次等做了一系列调查;在结合行业自身的特点的同时,也充分考虑到设计者自身的条件与现有技术成熟程度的基础上做出的一款适合大多数人使用的即时通讯软件。产品定位:大多数人能够使用,操作者有无相关专业知识都
16、可主要功能有:用户注册用户登陆分组管理好友管理即时通讯 查询用户 查询聊天记录实现技术:MyEclipse 7.1SQL Server 2000 数据库1.5 系统创新点操作简单、方便,快捷、准确、数据存储安全可靠,针对自身特点去除了不必要的冗余东西,使系统负担最小,速度最快;采用更高的安全机制,使数据更加安全,用户可以放心的使用。2 需求分析2.1 功能需求2.1.1 用户管理即时通讯系统拥有多个账户,允许多个用户注册;一个用户可以注册多个标识;注册所使用的帐号类型为字母数字的组合;注册新用户时必须填写符合要求的信息;注册后只有用户名与密码验证成功才能正确登录。用户管理如图2-1所示。图2-
17、1 用户管理用例图2.1.2 分组管理分组管理部分要能够实现分组的添加与删除,所添加的分组名称可以是中文也可以是字母数字的组合,通过对分组的有效管理以便于更方便的管理好友。分组管理如图2-2所示。图2-2 分组管理用例图2.1.3 好友管理用户可以查询所有用户;选择适当的可以加为好友;一个用户可以添加多个人为好友,一个用户也可以被多个人添加为好友;用户可以删除好友;用户只可以将好友放在一个组中。好友管理如图2-3所示。图2-3 好友管理用例图2.1.4 即时通讯即时通讯模块用户可以与在线的好友进行聊天,用户首先查看好友是否在线,如果在线即可进行即时通讯,并且用户可以查看与好友的所有聊天记录。即
18、时通讯如图2-4所示。图2-4 即时通讯用例图2.2 通讯模型的特点2.2.1 适用性作为一个一般性的模型,本通讯模型适用于无线网络和Internet上现存的多种系统。模型中的JQQ可以是Internet上的应用程序,也可以是移植到移动电话和其他各种无线手持设备上的应用程序。即时通讯和服务可以是Internet上ICQ服务,可以是GSM标准中的SMS(Short Message Service,短信息服务),也可以是NTT Do Co Me的I-MODE服务。2.2.2 扩展性模型具有很强的扩展性。本模型并没有规定服务必须采用中央服务器。在模型实现的时候,可以使用基于中央服务器的星形结构,也可
19、以使用对等网络结构甚至其他混合结构。例如,深圳腾讯QQ的通讯服务系统使用的是基于中央服务器的Client/Server的混合星型结构,而即时通讯服务使用的是对等网络加客户机服务器结构。2.3 可行性研究2.3.1 技术可行性分析(1)项目开发过程中遇到难以克服的技术问题,该怎么办。这一方面,我们庆幸的是在学校我们有好多的老师在背后支持着我们,同时学校的网络比较方面,给我们解决问题提供了方便。而且,凭借借阅图书馆收藏图书更增加了我们解决技术问题的信心。(2)软件的质量如何。有些应用对实时性要求很高,如果软件运行慢如蜗牛,即便功能完备也毫无实用价值。有些高风险的应用对软件的正确性与精确性要求极高,
20、如果软件出了差错而造成用户利益损失,那么软件开发在某种意义上说也就失败了。鉴于此,我们在编码测试的时候,找专业老师做为技术支持。并且在完成之后,实际验证可行性,同时要考虑到机器硬件设备的不同而给软件带来的不可预知的结果,所以在机房的不同电脑上运行软件达到测试目的。2.3.2 不确定性分析需要格外考虑的实际情况也可以说是面临的一个现实问题就是:毕业生面临着毕业与找工作,还有就是最后的毕业答辩与论文设计。这个过程中,学校会有许多有关毕业生的信息要安排,事物要处理。在进行课题设计的时候,难免会有一些格外的因素,如,时间被耽误,在规定的时间中无法完成相应的任务;有问题存在的时候,老师也恰巧也有事情,问
21、题无法及时解决等一系列问题,都是要考虑在内的。再有就是,最害怕在做系统的中途遇到系统崩溃而东西又无法保存;或者是东西全部做好之后,忘记了备份,而更为不巧的是以染上了病毒,而致使几个月的辛苦负于东流。这些是容易忽视的也是最容易出现的情况。所以要在设计的时候做足这方面的准备,不让那种情况发生。2.3.3 分析结论通过上面简要的分析,最后做出的结论是:方案可以按照时间要求、保证质量的基础上运用MyEclipse与SQL Server 2000 数据库进行系统的开发。2.4 运行环境操作系统:windows2000server中文版、windows 2003 Server或者Windows XP Sp
22、3数据库:SQL Server 2000 中文个人版开发工具:MyEclipse 7.1硬件配置:CPU 1.7GHz以上,内存512MB以上3 概要设计3.1 框架设计本系统总体框架如图3-1所示。图3-1 系统总体框架图3.2 拓扑结构 系统的拓扑结构如图3-2所示。S1S3S2C1C2C3客户端服务器星型结构服务器服务器对等结构模式一S1S3S2C1C2C3客户端服务器星型结构服务器服务器对等结构客户端客户机对等结构模式二CS服务器客户端客户端客户端连接客户端服务器连接服务器服务器连接图3-2 系统的拓扑结构图现在不少即时通讯系统服务的内部拓扑中采用模式一;也有极其个别系统在即时通讯服务
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
15 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- JQQ 即时通讯 系统 设计 实现