基于Java的即时聊天系统的设计与实现开题报告
2020-04-14 17:28:50
1. 研究目的与意义(文献综述包含参考文献)
一、局域网通信的背景
当代,随着互联网技术的发展,人们之间的通信方式也发生翻天覆地的变化,人们可以通过互联网与远在万里之遥的人进行通信与信息的交流。然而由于存在一些特殊的要求,一些企业和高校计算机实验室的网络环境必须与外网(互联网)隔绝。这样就形成了一个与外界不能互通的局域网,这样导致很多市场上基于互联网服务器的聊天通信软件无法使用。所以一款方便高效的局域网通信软件对隔绝互联网环境的局域网很有必要,可以很有效的提高沟通效率,降低沟通成本。
目前市场上基于局域网通信的软件不多,比较著名的有飞秋(FeiQ)和腾讯公司面向企业推广的腾讯通,两款软件都有着比较不错的性能,其中飞秋可以不需要在局域网设置服务器,更加方便,但是有时候却会越到无法收到在线用户发来的消息等。相比这方面通讯通,做的比较好,由于有局域网服务器的支持,可以很好的处理消息同步,并且并采用丰富的沟通方式进行实时沟通。文本消息、文件传输、直接语音会话或者视频的形式满足不同办公环境下的沟通需求。
在有广大的市场需求,可提供选择不多的情况下,开发一款局域网实时通信工具很有必要。面向特定的要求,可以给用户提供方便快捷的通信。
二、 开发工具
1. Eclipse 是著名的跨平台的自由集成开发环境(IDE)。最初主要用来Java语言开发,但是目前亦有人通过插件使其作为其他计算机语言比如C 和Python的开发工具。它是一个开放源代码的、基于 Java 的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括 Java 开发工具(Java Development Tools,JDT)。Eclipse有着非常人性化的智能提示功能和代码语法检查错误功能,使用eclipse进行开发,可以提高我们的开发效率,缩短开发时间,降低开发成本。并且eclipse有着很强大的调试工具(第三方插件),如junit,easymock等。可以给我们提供高效的代码测试环境,一个好的测试环境在一定程度上保证了程序的健壮性。
2. SQLite,是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如 Tcl、C#、PHP、Java等,还有ODBC接口,同样比起Mysql、PostgreSQL这两款开源世界著名的数据库管理系统来讲,它的处理速度比他们都快。SQLite第一个Alpha版本诞生于2000年5月。 至今已经有12个年头,SQLite也迎来了一个版本 SQLite 3已经发布。
三、主要功能
基于JAVA局域网实时聊天系统
主要有以下模块:
1.实时聊天 实时更新在线用户,用户可以指定与某个用户单独私聊,也可以在某个群体中,实现群聊。
2. 语音视频聊天 .实现用户之间视频和语音聊天。使用java多媒体技术实现视频和语音聊天功能。
3. 文件传输 文件传输功能。可以给指定的用户发送计算机硬盘内的文件,实现文件的传输。
四、计划进度
起讫日期 |
设计(论文)各阶段工作内容 |
备 注 |
2013-1-1~2013-3-15 |
熟悉并掌握Eclipse软件的使用 |
|
2013-3-16~2013-4-10 |
软件系统的模块初期设计 |
|
2013-4-11~2013-5-10 |
相关模块的详细设计与模块实现 |
|
2013-5-11~2013-5-24 |
撰写毕业论文,提交论文初稿 |
|
2013-5-25~2013-6-5 |
修正、打印装订、提交论文 |
|
2013-6-6~2013-6-12 |
评审、准备答辩,完成答辩PPT |
|
2013-6-14 |
论文答辩 |
|
五、参考文献
[1](美) Cay S.Horstmann java核心技术卷I[M] .北京:机械工业出版社2012
[2] (美) Cay S.Horstmann java核心技术卷II[M] .北京:机械工业出版社2012
[3] (美) Joshua Bloch Effective java中文版[M] .北京:机械工业出版社2012
[4] 朱喜福 戴舒樽 王晓勇 Java网络编程基础(第2版)[M]. 人民邮电出版社 2008
[5]陈轶.姚晓昆编著.Java程序设计实验指导[M].北京:清华大学出版社,2006
[6]雍俊海编著.Java程序设计习题集[M].北京:清华大学出版社,2006
[7]朱福喜编著.Java语言习题与解析[M].北京:清华大学出版社,2006
[8] 吴其庆编著.Java程序设计实例教程[M].北京:冶金产业出版社,2006
[9] 柳西玲.许斌编著.Java语言应用开发基础[M].北京:清华大学出版社,2006
[10] 施霞萍等编著.Java程序设计教程 第2版[M].北京:机械产业出版社,2006
[11] [美]Herbert Schidt著.Java参考大全.鄢爱兰.鹿江春译[M].北京:清华大学出版社,2006
[12] 宛延闿等编著.实用Java程序设计教程[M].北京:机械产业出版社,2006
[13] 陈国君等编著.Java2程序设计基础[M].北京:清华大学出版社,2006
[14]郑莉.王行言.马素霞编著.Java语言程序设计[M].北京:清华大学出版社,2006
[15] 丁振凡主编.Java语言实用教程[M].北京:北京邮电大学出版社,2005
[16] Linden deCarmo. Core Java Media Framework [M]. Upper Saddle River: Prentice Hall PTR, 1999
[17] 刘忻生,黄梅华. Java语言与Java 技术[J]. 程序员, 2009, 15 (12) : 71-78
.
[18] 刘俊肖. 基于Java的数据库连接操作[J]. 加瓦同行, 2007, 23 (11) : 27-31.
[19] 李翔 ,怀进鹏 ,曾晋, 高鹏 .一种Java遗留系统服务化切分和封装方法[J] 计算机学报,2009,9期(9):1804#8212;1815
[20] 王建民, 余志伟, 王朝坤,付军宁. Java程序混淆技术综述[J] 计算机学报,2011,9期(12):1578#8212;1588
2. 研究的基本内容、问题解决措施及方案
一、研究或解决的问题
1.实时问题:聊天系统最重要的就是消息的同步处理,不可以让软件有很大的网络延迟,不然客户体验会很差。
2.视频语音聊天:使用语音与视频技术,涉及到多媒体方面的知识,就会涉及到使用如何调用系统资源等一系列问题。