基于Java即时聊天系统的设计与实现doc.doc
《基于Java即时聊天系统的设计与实现doc.doc》由会员分享,可在线阅读,更多相关《基于Java即时聊天系统的设计与实现doc.doc(194页珍藏版)》请在咨信网上搜索。
1、基于Java即时聊天系统的设计与实现【实用文档】doc文档可直接使用可编辑,欢迎下载 本科毕业设计(论文)基于Java即时聊天系统的设计与实现 学 号:05学生姓名:何晶指导教师:范忠诚所在学院:计算机科学技术学院所学专业:计算机科学与技术专业2016年 6月摘 要伴随着互联网的高速发展,产生了一系列与互联网相关的新鲜事物,即时聊天系统就是其中最具代表性的产物。即时聊天系统经过不断地发展,凭借其迅速、便捷、即时的特点,逐渐成为一种重要的信息交流工具,受到越来越多的网民的青睐。即时聊天系统开发主要包括两个方面:即时聊天系统服务器端设计、即时聊天系统客户端设计。即时聊天系统服务器端设计主要通过So
2、cket套接字建立服务器,服务器能够读取和转发从客户端发来的信息,并且能够刷新用户列表。即时聊天系统客户端设计主要通过与服务器建立连接,从而使服务器端与客户端的信息进行交流。在这里,网络通信机制原理得到了运用,通过直接继承Thread类来建立多线程。同时,开发中利用了计算机网络编程的基本理论知识,如TCP/IP协议、客户端/服务器端模式(Client/Server模式)、网络编程的设计方法等。在网络编程中利用流来实现信息的交换,从而读取和发送信息.即时聊天系统采用myeclipse为基本开发环境和java语言进行编写,通过不断修正和改进初始原型系统,直至此系统完全可行为止。关键词:即时聊天系统
3、;套接字;JavaAbstractAlong with the high-speed development of Internet, produced a series of new things related to the Internet, instant messaging system is the product of one of the most representative。 Instant messaging system through constant development, with its fast, convenient, real-time characte
4、ristics, becoming an important communication tool, get the favour of a growing number of Internet users。 Instant messaging system development mainly includes two aspects: instant messaging system server client, instant messaging system design。 Instant messaging system design mainly through the Socke
5、t server Socket server, the server can read and forward from the clients information, and be able to refresh the user list。 Instant messaging system design mainly by the client and the server connection is established, which makes the server to communicate with the clients information。 Here, the pri
6、nciple has been using network communication mechanism, through direct inheritance for building a multithreaded Thread class. At the same time, the use of computer network programming in the development of the basic theory of knowledge, such as TCP/IP protocol, Client/Server mode (Client/Server mode)
7、, network programming design method, etc. Using flow in network programming to achieve the exchange of information, so as to read and send information。 Instant messaging system using myeclipse as the basic development environment and the Java language to write, by constantly revised and improved the
8、 initial prototype system, until the system is completely feasible.Key words:Instant messaging system ;socket ;Java目 录摘 要IAbstractII第1章 绪论11。1 课题背景11.2 国内外发展现状11。2。1 国外发展现状11。2.2 国内发展现状11.3 开发目的和意义21.4 系统设计的思想2第2章 方案论证32。1 方案分析32.2 可行性分析32。2.1 经济可行性32。2.2 技术可行性42。2.3 操作可行性42。2。4 法律可行性42.3 方案的确定42.4
9、系统设计的相关技术4第3章 需求分析83.1 系统基本功能描述83.2 系统需求分析83。3 数据流图83。4 数据字典103。5 用例图12第4章 系统概要设计144.1 系统总体流程图144.2 系统功能模块划分15第5章 系统详细设计与实现185.1 系统设计与实现185。1.1 注册模块185.1。2 登录模块205.1。3 聊天模块225。1.4 后台管理模块255.1.5 其他功能实现285.2 数据库设计31第6章 软件测试与结果分析386。1 软件测试386。1。1 白盒测试386。1.2 黑盒测试386。1.3 系统测试386。2 测试方法与总结396.2。1 测试方法396
10、.2.2 测试总结40结 论41致谢43参考文献44附 录45第1章 绪论1.1 课题背景人类社会在不断的发展,从原始社会发展到如今高度发达的文明社会,离不开人类的团结协作及创造力,而交流便是人类在发展过程中至关重要的一项技能.在人类漫长的发展过程中,交流的方式也在不断更新变化。从最早的交流方式直接交流(语言、文字等),到后来利用介质的交流方式-间接交流(飞鸽传书、烽火狼烟等),再到近现代利用工业革命的成果,创造出了远程交流方式(电报、电话等).而到了上世纪末,随着计算机技术和网络技术的高速发展,诞生了一种新型交流方式-即时聊天系统.即时聊天系统在沟通、协作方面有着其它交流方式无法比拟的优势,
11、它凭借方便、快捷、实时等特点得到了越来越多人的青睐。本课题研究的就是基于Java语言的即时聊天系统.即时聊天系统是为了满足各用户之间进行即时的信息交流而设计的一套系统,作为一种新型的通信和交流工具,即时聊天系统具有极其广泛的发展前景。本系统的主要特性是能动态、实时的完成信息的传递,同时具有高效的交互性,更有效的处理客户请求,同时维护和更新也更加简易。本文接下来会依次介绍即时聊天系统运行所需的环境及其工作流程和各个功能控件的工作原理,并且文中提供了部分程序源代码。1.2 国内外发展现状1.2.1 国外发展现状当今国际上对网络通信系统研究的较好的公司有:思科,Sun,Ms等公司,思科主要研究的是底
12、层的传输;MS,Sun公司研究的是应用层。其中MS公司凭借其在操作系统的垄断地位,为了在网络的发展中取得先机,采用了各种各样的手段。但是,其捆绑的msn,无论从功能上,还是技术上来说,都不算是非常先进的.这让人想起了当年的网景公司,网景只是生不逢时.MS不择手段的想打跨网景,可见其对网络的重视。如今,Sun公司在网络应用上捷足先登,凭借着Java,Sun在网络的应用上领先于MS.微软,想用同样的办法搞跨对手,因此它拿出了Visual c#来对抗Java.这些都是在应用层面的开发工具,应用层上的产品就更显种类繁多.ICQ几乎是国际上通用的即时通信工具,由于在我国它的应用不是很广,所以其原理也很少
13、被介绍.Msn,是MS的产品,同样在国内没什么市场,所以对其原理也很少被讨论过1。1。2.2 国内发展现状国内在应用层上的网络应用软件目前发展异常的火爆,因为我国有着网络应用的最大的市场。现在国内网络的基础性建设发展迅速,应用软件也层出不穷。不少厂商分别推出了自己的IM,如腾讯QQ、阿里旺旺、新浪UC、移动飞信等,这些都是我们所熟悉的PC端的即时通讯软件。随着智能手机、平板电脑的普及,一些移动端的即时通信系统也如雨后春笋般涌现出来,如小米公司的米聊,腾讯公司的微信,还有年轻人之间很流行的陌陌、游戏玩家常用的YY语音等。这些软件本身功能也越来越丰富,远远超出了单纯的即时聊天系统的范畴。现在的即时
14、通信系统不仅仅是人们的沟通工具,还成为了人们利用其进行电子商务、工作、学习等交流的平台。1。3 开发目的和意义在当今社会,不管是个人用户还是企业用户,对沟通的需求总是在不断地发展。传统的沟通交流方式如电话、传真、邮件等已经不能完全满足人们学习、工作、生活的需要。随着计算机软件、计算机网络和移动通信技术的发展融合,集方便、廉价、快捷、实时等优点于一身的即时聊天系统可以说是继电子邮件、万维网之后,互联网上最具有杀伤力的应用。很难想象一台个人电脑没有安装像QQ这样的即时通讯软件。虽然即时聊天系统设计的初衷是聊天,但正如前面所说,其功能已经超出了聊天的范畴,随着企业即时通讯工具(EIM)的出现,IM系
15、统更是成了企业信息发布、资源共享、问题探讨和网络营销的一把利器.通过现有的技术,企业完全可以摒弃通用的免费的即时通讯系统,转而根据自己企业的需求定制开发自己专属的内部即时通讯系统,以实现更好的管理,提高员工的工作效率。我们的生活中沟通无处不在,即时聊天系统这类广泛使用的基础软件的研究开发意义深远。对于个人用户而言,能够实现好友即时通讯,传递实时信息,让用户随时随地都可与好友保持畅快有效的沟通。对于企业用户而言,能够实现建立员工交流平台,统一信息发布平台,减少运营成本,促进企业办公效率。商业即时通讯系统的功能越来越多样化,一些功能也很新颖,如现在流行的语音对讲功能。本系统不比商业系统,没有考虑过
16、多的复杂性,主要实现了基本的通讯功能,以满足学习研究之用。1。4 系统设计的思想基于Java技术的聊天系统主要是探索如何在Java技术下能够实现即时聊天的一些基本功能:用户注册,用户登录,查找其他用户,添加删除好友,添加个性签名,发布和接收系统消息,实现一对一聊天,能够发送表情等功能。论文的设计主要采用了两种研究方法:一是文献资料研究的方法。在研究聊天系统现实中,本人通过图书馆、电子图书馆学习了Java语言中的一些编程技术;二是理论与实际相结合,既然掌握了技术与方法,那么就应该快速的进行实践,在软件的设计过程中,才能够理解到理论与现实的差距,遇到棘手问题,应该快速查阅资料快速攻破。第2章 方案
17、论证2。1 方案分析经过认真的研究与分析,同时综合各种计算机高级语言的特征和适应范围,最终决定选择纯面向对象的Java语言来完成即时聊天系统的设计.对于本系统的设计,可以采用C/S和B/S两种不同的模式.在数据库方面,Hibernate和MyBatics都有着很强大的功能,而且Mysql和Oracle也有着不同的优缺点。综上所述,可以得到以下两个方案。方案一:C/S模式+Hibernate+OracleC/S(Client/Server)结构,即大家熟知的客户机和服务器结构,其优点是能充分发挥客户端PC的处理能力,很多工作可以在客户端处理后再提交给服务器.对应的优点就是客户端响应速度快。而且H
18、ibernate对数据库进行的是重量级的封装,对整个运行速度不会很慢。而且Oracle体积很大一般在几个GB的安装包,运行时它的内存一般是几百兆,但是Oracle集成的功能非常强大。方案二:B/S模式+MyBatics+MysqlB/S(Browser/Server)结构即浏览器和服务器结构,它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层3-tier结构。这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成
19、本和工作量,降低了用户的总体成本(TCO).MyBatics是对数据库的轻量的一个封装,但是sql语句需要自己来设置,配置在xml文件中。而MYSQL非常小,一般几十兆,对主机的内存占用也不是很大,安装方便。2.2 可行性分析开发任何一个系统,都是要受到时间和资源等的一些限制。因此,在每一个系统开发之前,都必须要进行可行性分析,这样就可以减少软件开发所带来的风险,也大大的避免了在物力、人力和财力上的浪费2.本系统的可行性分析应包括四个方面:经济可行性、技术可行性、操作可行性和法律可行性。2.2。1 经济可行性计算机网络已经普及,因此在网络设备上不需要进行大的投入。本系统如果采用一个MySQL数
20、据库服务器,相对于Oracle数据库服务器成本偏低.同时,本系统能够让人们的交流更加便捷,其带来的间接效益远远超过了其开发成本,所以在经济上本系统的设计是具有完全的可行性的。2.2。2 技术可行性此系统可以使用MySQL存储用户信息,由于MyBatics对Sql语句的封装小,这会增加开发过程中的代码量,并且,Oracle运行时很占用内存,它集成了很多功能,而且我们用很多功能用不上,所以MySQLl是很满足我们的需求的。MySQL作为一种关联数据库管理系统,将数据保存在不同的表中,是一个安全度高、可靠性好的并且能够支持面向对象设计的数据库系统。同时,MySQL开放源码,速度快、总体拥有成本低等特
21、点Error! Reference source not found.。并且在易用性、可维护性、灵活性等方面也很好。采用JDBC技术对其进行增删改查,使用套接字来实现网络上客户和服务器之间的连接,同时采用Hibernate 框架来管理Java 类到数据库表的映射(包括从Java数据类型到SQL数据类型的映射),并且提供数据查询和获取数据的方法.所以从技术角度来看本系统的设计是具有完全的可行性的.2.2。3 操作可行性一方面可以让本地机同时作为客户端和服务器实现一台机器上的即时通讯。另一方面,只要一台以上计算机连接在同一个局域网内,并且在作为客户端机器的本系统中设置需要连接的作为服务器端机器的I
22、P地址,本系统就可以实现局域网通讯,所以操作上完全不存在问题。如果要实现internet上通讯,理论上只需要将服务器端运行在一个有固定IP的公网上就可以。2。2。4 法律可行性本即时聊天系统的开发,不会侵犯到别人的专利版权,也不违反国家的相关规定,所以在法律上来说也是可行的。2。3 方案的确定根据以上的分析和总结,很显然方案一更适合我们的完成系统设计。因此,我们使用方案一来进行项目的开发。2。4 系统设计的相关技术本即时聊天系统是基于Java语言的,采用C/S结构,使用MySQL存储用户信息,采用JDBC技术对其进行增删改查,使用套接字来实现网络上客户和服务器之间的连接,同时采用Hiberna
23、te 框架来管理Java 类到数据库表的映射,并且提供数据查询和获取数据的方法。1、Java语言Java是一种通过解释方式来执行的语言,其语法规则和C+类似。同时,Java也是一种跨平台的程序设计语言3。用Java语言编写的程序,可以运行在任何平台和设备上,如跨越IBM个人电脑、MAC苹果计算机、各种微处理器硬件平台,以及Windows、Unix、OS/2、MAC OS等系统平台,真正实现“一处编写,到处运行”.Java非常适合于企业网络和Internet环境,并且已成为Internet中最具影响力、最受欢迎的编程语言之一。与目前常用的C+语言相比,Java语言简洁得多,而且提高了可靠性,除去
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实用文档 基于 Java 即时 聊天 系统 设计 实现 实用 文档 doc
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【二***】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【二***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。