计算机科学与技术专业毕业论文--基于java的QQ聊天系统设计.docVIP

计算机科学与技术专业毕业论文--基于java的QQ聊天系统设计.doc

  1. 1、本文档共65页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第一章.绪论 1.1 课题背景 随着互联网逐步普及,人们的生活和工作也越来越离不开信息网络的支持, 而聊天室是人们最常见, 最直接的网上交流的方式。本聊天系统以聊天交流为主,为广大用户提供一个借助网络进行人际交往的平台,也是网络与现实最贴近的实用型网站。本文所介绍的网络聊天系统是基于开放的JAVA应用程序开发设计的,其主要特性是能动态、实时的完成信息的传递,且具有高效的交互性,更有效的处理客户请求,易于维护和更新,其运行所需环境及其工作流程和各个功能控件的工作原理将在本文依次介绍,并且文中提供了部分程序源代码。 1.2 课题研究的目的和意义 即时通讯系统的最大特点是在网上进行信息的实时交流。即时通讯系统的发展使得人们可以进行网上社交,获得社会的尊重,实现自我需求,这同时也为了网络即时通讯软件发展的驱动力。而物质文明的日益发达所带来的副作用,有使得人们习惯与周围的人保持距离。以致人们更愿意对陌生人敞开心扉。与传统通讯方式相比,即时通讯系统具有快捷,廉价,隐秘性高的特点,在网络中可以跨年龄,身份,行业,地域的限制,达到人与人,人与信息之间的零交流。从这点上讲,网络即时通讯的出现改变人们的沟通方式和交友文化,大大拓展了个人生活交流的空间。 1.3 国内外概况 目前国内外做聊天系统的很多,产品也是琳琅满目,国内有诸如腾讯QQ与新浪UC网易泡泡等,国外著名的有MSN以及跨平台GAIM等.本人取最具有代表性的QQ和MSN进行了一些研究,为我毕业设计聊天系统做了充分的准备. 腾讯无疑使国内即时通讯市场的霸主,自从99年进入即时通讯领域并迅速占领市场之后,其在国内用户数量始终高居榜首,即时近几年面对微软MSN的强大攻势,腾讯QQ的市场占有率依然稳步增长.参考了许多资料,以及自己通过观察腾讯QQ运行时的各种细节.可以确定腾讯QQ是以多服务器提供服务,服务器总控客户端客户端之间UDP直连通信的.并且在两个客户端之间不能建立直接的情况下,才由服务器进行中转通信. 第2章.系统设计方案的研究 2.1 系统的设计方案 聊天系统的设计跟普通网站设计有着许多不同的地方,普通网站设计所考虑的因素,例如,普通网站需要对布局进入大量美化以及动画设计等等,而聊天室只要提供满足访客双方直接实时聊天即可。因此,在设计聊天系统的过程中,必须要考虑好以下几个设计要点: 1、实现思想 在Internet上的聊天程序一般都是以服务器提供服务端连接响应,使用者通过客户端程序登录到服务器,就可以与登录在同一服务器上的用户交谈,这是一个面向连接的通信过程。因此,程序要在TCP/IP环境下,实现服务器端和客户端两部分程序。 2、服务器端工作流程 服务器端通过socket()系统调用创建一个Socket数组后(即设定了接受连接客户的最大数目),与指定的本地端口绑定bind(),就可以在端口进行侦听listen()。如果有客户端连接请求,则在数组中选择一个空Socket,将客户端地址赋给这个Socket。然后登录成功的客户就可以在服务器上聊天了。 3、客户端工作流程 客户端程序相对简单,只需要建立一个Socket与服务器端连接,成功后通过这个Socket来发送和接收数据就可以了。 系统采用客户/服务器摸式(如图) 2.2 设计方案的分析 聊天系统不外乎两个方面,服务器端和客户端。简单分析一下两个方面所要完成的任务,对设计这个程序来说,等于完成了一半。首先来看一下服务器端的任务:   1.服务器端应当建立一个ServerSocket,并且不断进行侦听是否有客户端连接或者断开连接(包括判断没有响应的连接超时)。   2.服务器端应当是一个信息发送中心,所有客户端的信息都传到服务器端,由服务器端根据要求分发信息。   以上就是服务器端最主要的两个任务。不难看出,服务器端的任务并不复杂。   客户端应该完成的工作包括:   1.与服务器端建立通信通道,向服务器端发送信息。   2.接收来自服务器的信息。   相对服务器而言,客户端的任务更加简单,有了以上的简单分析,可以知道,解决上述四个问题,即完成了该聊天系统的核心。 2.3 采用的关键技术 系统采用的关键技术有: 2.3.1 Socket网络通信技术 Java具有强大地网络编程功能,它提供了基于Socket的通信方式(Socket—base—communication),使得应用程序可以像读文件一样从Socket读取数据和写入数据,java提供了流Socket和数据包Socket。两者分别基于传输控制协议和用户数据报协议。 所谓socket通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄。通常通过"套接字"向

文档评论(0)

mkt365 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档