您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 信息化管理 > (java)类似QQ的聊天软件论文
即时消息系统--本科毕业设计收藏摘要随着网络通信技术和计算机技术的进一步发展,即时消息正在成为网络在线活动中不可缺少的业务。本课题在现有的网络通信技术、数据库技术和编程技术的基础上设计并实现了网络即时消息系统。该系统采用三层C/S网络系统构架,采用多线程实现服务器的并发处理,采用ODBC接口访问SQLServer2000数据库设计数据管理模块,采用J2SE平台和java语言去开发系统。该系统按照软件工程思想采用面向对象和模块化设计方法设计,其中采用了网络通信技术、数据库技术、多线程技术等计算机技术,实现了网络通信的基本功能,具有通信即时性的特点。在论文中,我们将会讨论网络即时消息系统的现状和发展,研究实现此系统的技术背景。然后我们对系统进行需求分析。按照要求,我们将进行总体设计和详细设计,如服务器端的设计,数据库的设计和客户端的设计。最后实现系统的配置和使用。本毕业设计所完成的网络即时消息系统的主要功能如下:1.服务器端:后台启动、监视用户和发送系统消息;2.用户登录和注册;3.好友管理:查找好友、添加好友和删除好友;4.通信:发送消息、接收消息和聊天记录5.上线和隐身。关键词:即时消息系统,C/S三层结构,TCP/IP,J2SE平台AbstractWiththefurtherdevelopmentofnetworkcommunicationtechnologyandcomputertechnology,InstantMessaginghasbeenarequirementofon-lineactivities.Thisprojectdesignandimplementation,theinstantmessagingbasedonthetopicoftheexistingnetworkcommunicationtechnology,databasetechnologyandprogrammingtechnology.Thissystemusescompositestructureofthree-tierC/Stodesignsystemarchitecture,usesmulti-threadingtoimplementserver’sparallelprocessing,usesODBCinterfacetoaccesstoSQLServerdatabasetodesigndatamanagementmodule,usesJ2SE(Java2StandardEdition)andObject-orientedprogramminglanguage,java,todevelopthesystem.Thissystemisdesignedbyobject-orientedandmodulardesignmethod,whichusedcomputertechnologiesbasedonnetworkcommunicationtechnology,databasetechnology,Multi-threadingtechnology,softwarereuseandsoon,thissystemhasbasicfunctionsofnetworkcommunication,,andhasfeaturesofinstant.Inmydissertation,wewilldiscussthestatusanddevelopmentofnetworkinstantmessenger,andresearchintherelevanttechnologybackground.Afterthatwewillanalysetherequirementofthesystem.Withtherequirementanalysis,wewillmakethegeneraldesignanddetaileddesign,suchasserverdesign,databasedesignandclientdesign.Inthelastpart,wewillimplementthesystemandputitintopractice.Thesystemhascompletedthefollowingmajorfunctions:1.Server:Startup,surveillanceandsendsystemicmessage.;2.Usermanagement:registrationloginandlogout;3.Friendmanagement:find,addanddelete;4.Communication:sendingmessage,recerivingmessageandreceivingsystemmessage;5.Onlineandhide.KeyWords:InstantMessenger,C/SThree-layerConstruction,TCP/IP,J2SEPlatform目录摘要Abstract目录第一章绪论1.1选题背景1.1.1即时消息系统的研究现状1.1.2即时消息系统的发展趋势1.1.3论文研究的主要内容1.2技术背景1.2.1C/S模型1.2.2TCP/IP协议1.2.3编程技术第二章系统分析与设计2.1需求分析2.2系统总体框架2.2.1总体设计2.2.2功能模块2.3系统详细设计2.3.1多线程设计2.3.2数据库设计2.3.3服务器的设计2.3.4客户端的设计2.3.5消息通信的设计第三章系统实现3.1数据库部署3.1.1建立数据库3.1.2配置ODBC数据源3.2开发环境3.2.1构建JavaSE平台3.2.2安装开发工具eclipse3.3服务器端的实现3.3.1启动服务器后台3.3.3发送系统消息3.4客户端的实现3.4.1用户注册3.4.2登录3.4.3程序主界面3.4.3添加好友3.4.4上线与隐身3.4.5聊天通信第四章总结参考文献致谢第一章绪论1.1选题背景1.1.1即时消息系统的研究现状即时消息系统[1](InstantMessenger,IM)是一种在后PC时代兴起的,以Internet网络为基础的,允许交互双方即时地传送文字、语音、视频等信息,能够跟踪网络用户在线状态的网络应用软件。即时消息系统产生有着深刻的社会原因:人们都有渴望社交,获得社会尊重、实现自我的需求,这正是即时消息软件风行的原动力,而物质文明的日益发达所带来副作用,又使得人们习惯与周围的人保持距离,以致人们更愿意对陌生人敞开心扉,在网络中可以跨越年龄、身份、行业、地域的限制,达到人与人、人与信息之间的零距离交流。从这点上讲,即时消息系统的出现改变了人们的沟通方式和交友文化,大大拓展了个人生活交流的空间。国内最为流行的即时消息软件是OICQ(简称QQ)。它以良好的中文界面和不断增强的功能形成了一定的QQ网络文化。该软件是由腾讯公司于1999年2月自主开发的基于Internet的即时消息系统。腾讯QQ目前已成为中国最主要的即时消息服务网络软件。作为一种即时消息工具,QQ支持显示好友在线、即时传送文字、语音和文件等功能。QQ还与无线寻呼、GSM短信息、IP电话网互联,为用户提供互联网短信及信息增值服务。腾讯QQ开发和拓展统一、高速、丰富的互联网应用平台、在线广告业务、移动通信业务、ISP及IP电话合作业务、企业商用即时消息服务、在线客户支持及在线呼叫业务。1.1.2即时消息系统的发展趋势21世纪将是网络化、信息化的世纪,信息的融合已经成为社会发展的主流方向[2]。即时消息系统将不断与信息交流领域的系统相互集成和渗透,扩展其自己的功能和应用范围,满足未来话音,数据和视频的多媒体应用需要,使即时消息以更丰富的接入方法,更高的服务质量,更友好的面貌呈现在世人的面前。从功能角度来看,即时消息系统向支持全媒体方向发展,随着多媒体技术在网络应用中的发展,即时消息系统承载的媒体,不再局限于原来的文字、语音和文件的信息交换,信息载体扩展到图形、图像和流媒体等多媒体业务上。目前ICQ和QQ预设了部分简单的表情图像,通过传输图像代码来传递表情图像,可以被视为即时消息开发商开发支持图形、图像为载体的即时消息软件的开端。从应用范围角度来看,即时消息系统集中在Internet个人用户之间的信息交流应用,随着网络技术应用的发展,即时消息系统应用范围向园区化、集团化拓展,应用领域突破个人,而用于远程教学、远程医疗、远程演示、网络会议等领域。1.1.3论文研究的主要内容本论文的主要工作是利用编程技术建立一基于J2SE的即时消息系统,主要实现网络即时聊天功能。在建立这个系统的过程中,我将会研究JAVA语言,多线程编程、网络编程以及数据据等方面的知识。在我的论文中,我将会研究即时消息的发展,并针对不同即时消息工具之间不能互通的弊端,介绍即时消息系统中的应用。为了更好地实现系统,我们还要研究J2SE技术。在论文中介绍了J2SE的体系结构、系统设计以及J2SE的开发环境。熟悉了开发平台,我们还要了解基于TCP/IP的Socket网络连接的基础知识,包括网络通信系统架构及Socket通信在该系统中的应用等内容。在论文中将着重介绍网络即时消息系统的设计和实现,包括界面及各个功能模块的设计,给出了相应的流程图并对其功能做了详细描述,最终实现了客户端之间的即时聊天通信功能。最后是结尾部分,对本文做了总结并针对该系统提出了一些不足和今后需要改进的地方。1.2技术背景1.2.1C/S模型在网络连接模式中,除对等网外,还有另一种形式的网络,即客户机/服务器网[3],Client/Server。在客户机/服务器网络中,服务器是网络的核心,而客户机是网络的基础,客户机依靠服务器获得所需要的网络资源,而服务器为客户机提供网络必须的资源。这里客户和服务器都是指通信中所涉及的两个应用进程(软件)。使用计算机的人是计算机的“用户”(user)而不是“客户”(client)。但在许多国外文献中,也经常把运行客户程序的机器称为client(这种情况下也可把client译为“客户机”),把运行服务器程序的机器称为server。所以有时要根据上下文判断client与server是指软件还是硬件。它是软件系统体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到Client端和Server端来实现,降低了系统的通讯开销。目前大多数应用软件系统都是Client/Server形式的两层结构,由于现在的软件应用系统正在向分布式的Web应用发展,Web和Client/Server应用都可以进行同样的业务处理,应用不同的模块共享逻辑组件;因此,内部的和外部的用户都可以访问新的和现有的应用系统,通过现有应用系统中的逻辑可以扩展出新的应用系统。这也就是目前应用系统的发展方向。1.2.2TCP/IP协议1.IP网际协议IP是TCP/IP的心脏,也是网络层中最重要的协议[4]。IP层接收由更低层(网络接口层例如以太网设备驱动程序)发来的数据包,并把该数据包发送到更高层---TCP或UDP层;相反,IP层也把从TCP或UDP层接收来的数据包传送到更低层。IP数据包是不可靠的,因为IP并没有做任何事情来确认数据包是按顺序发送的或者没有被破坏。IP数据包中含有发送它的主机的地址(源地址)和接收它的主机的地址(目的地址)。高层的TCP和UDP服务在接收数据包时,通常假设包中的源地址是有效的。也可以这样说,IP地址形成了许多服务的认证基础,这些服务相信数据包是从一个有效的主机发送来的。IP确认包含一个选项,叫作IPsourcerouting,可以用来指定一条源地址和目的地址之间的直接路径。对于一些TCP和UDP的服务来说,使用了该选项的IP包好像是从路径上的最后一个系统传递过来的,而不是来自于它的真实地点。这个选项是为了测试而存在的,说明了它可以被用来欺骗系统来进行平常是被禁止的连接。那么,许多依靠IP源地址做确认的服务将产生问题并且会被非法入侵。2.TCP如果IP数据包中有已经封好的TCP
本文标题:(java)类似QQ的聊天软件论文
链接地址:https://www.777doc.com/doc-5516224 .html