基于Java的即时通讯软件的设计与实现

 2022-01-17 11:01

论文总字数:14118字

目 录

第一章 绪论 6

1.1 即时通讯概述 6

1.2 选题的目的和意义 6

第二章 主要技术介绍 7

2.1 开发环境介绍 7

2.1.1 Java语言的产生和发展简史 7

2.1.2 Java语言主要特点 7

2.1.3 JDK 7

2.1.4 Eclipse 7

2.1.5 Socket通信技术 8

2.2 SQL语言简介 8

2.3即时通讯系统原理 9

第三章 系统分析 9

3.1系统可行性分析 9

3.1.1技术可行性 9

3.1.2经济可行性 10

3.1.3操作可行性 10

3.2系统需求分析 10

3.2.1服务器端实现的主要功能 10

3.2.2客户端主要功能 10

第四章 分块设计 11

4.1系统总体框架 11

4.2功能设计 11

4.2.1服务端功能设计 11

4.2.2客户端功能设计 12

4.3.界面设计 13

4.3.1服务器端界面设计 13

4.3.2客户端界面设计 14

4.4系统数据库设计 16

4.4.1数据库选择 17

4.4.2数据库设计 17

第五章 测试 18

5.1用户申请账号功能的测试 18

5.2用户账号登录功能的测试 19

5.3显示在线好友功能的测试 20

5.4一对一在线聊天功能的测试 21

5.5多人在线聊天功能的测试 22

第六章 结论和展望 22

6.1全文工作总结 22

6.2下一步要进行的工作和展望 23

参考文献 23

致 谢 23

基于Java的即时通讯软件的设计与实现

时 伟

,China

Abstract:With the progress of the times and the rapid development of network technology, instant messaging tools have penetrated into the lives of most people today. Instant messaging (Instant Messaging) is the most popular and practical mode of communication, and the types of instant messenger software are also various. Service providers also provide rich and varied communication service functions. Today's network has become the highway of information transmission, making communication between people more timely, convenient and accurate.

The paper carefully explained, instant messaging software is composed of client and server consists of two main modules, discusses the design method of each module, and the main function of each module with flow chart are described. According to the idea of software engineering, object oriented and modular design method is adopted.

Through the Java language, MVC framework and socket communication, the system finally implements a user oriented instant messenger software used in the lan. The software meets the basic communication requirements, and the program design is modular, so it has a certain scalability.

Key Words:Instant messaging; Java language; MVC; socket

第一章 绪论

1.1 即时通讯概述

即时通讯(Instant Messaging)是在互联网连接畅通的情况下,实现两人或两人以上,将文字,声音甚至图像等信息相互传递的通信过程。顾名思义,即时通讯最大的特点就是他的即时性,好友之间能迅速收到对方的信息,并迅速的回复对方,与传统的信件邮箱方式比起来可谓是不知道方便了多少,一种没有延迟的交流方式,宛如是当面对话,拉近了人们之间的距离。

当今社会是一个信息迅速交融的社会,即时的信息才能让人们在工作学习中,做出更即时判断,因此人们对交流的方式要求逐渐升高。因此即时通讯的技术一刻未停,为了满足人们的生活需求也在逐渐成熟,形成一个很好的良性循环。

即时通讯技术经过10几年发展,功能早已不再满足于简单的两者之间的文字交流。如今的即时通讯甚至可以实现图片,声音,视频的交流,功能也越来越丰富,融合了游戏的娱乐功能,好友之间可以轻松得一起玩游戏或者其他的娱乐活动,增加了好友之间的好感度,使得聊天更加得富有趣味。

现在的即时通讯软件在qq的领头下茁壮成长,qq的强大功能自不用多说,其他的通讯软件也有也有各自的特点,比如飞信可以免费向好友的手机发送短信,而且随着技术的进步,人们不仅可以pc之间或者手机之间交流,也可以跨平台在pc与手机之间进行交流。

随着即时通讯软件的普及,人们无处都离不开即时通讯。比如上了大学,班级里有一个群,宿舍之间也有群,参加的社团也有各自的群组,即使工作了,公司了各个部门之间也有各式各样的群组,每天都有各种消息提醒,屏蔽了消息的群组存在意义也不大了。所以如何在企业之间或者班级之间建立针对各个特定的对象的通讯软件,并且保证信息的安全性,正是该论文的研究目标。

1.2 选题的目的和意义

上世纪以来,计算机的出现极大的改变了人们的生活样貌,人们通过计算机可以学习,可以娱乐,在上世纪末出现的即时通讯技术更是改变了人们的生活方式。在网络连接畅通的情况下,人们可以对着电脑屏幕进行即时的文字交流,信息的传递不再变得缓慢,本世纪出即时通讯的技术一直在提升,逐渐发展为集文字、图像、视频于一体的多功能的通讯软件。即时通讯软件行业也是百花齐放,涌现出了很多杰出的软件,如qq、微信、飞信,YY语音等,他们有各自的特点,极大的方便了人们的生活。

在当今信息迅速交融的时代,腾讯qq做的很是杰出,用户基数几乎遍布全国,在近些年,几乎每一个工作团体都有一个qq群组,但是qq的发展也有缺点,缺点就是功能太多了,它没有把这些功能区分开,娱乐、工作和学习集于一体,一方面它是丰富了人们的生活,但是另一方面,仅仅工作或者学习的人就会受到其他方面的影响。比如工作的时候一些不相关的信息弹入用户视野,会极大得影响用户的工作效率,因此开发出一款针对特定用户群、信息安全度高的即时通讯软件迫在眉睫。

第二章 主要技术介绍

2.1 开发环境介绍

2.1.1 Java语言的产生和发展简史

Java是一款纯粹的面向对象的编程语言,它是由Sun公司在1995年初发布的,该公司把这款语言放到网络上,免费给大家使用,以开源的形式吸引了大批的软件工程师,他们使用这简单方便的语言制作了许多小游戏。逐渐的,Java语言在20年来迅猛发展,改变了后来应用软件的开发模式,已经成为人类历史上具有重要意义的语言,从来没有一款语言像Java吸引如此多的程序员。它继承了c 的优点,又去除了其中不少难懂不实用的方法。Java共有三个版本:J2SE、J2ME、J2EE。J2SE是J2ME和J2EE的编程基础,而J2SE主要是用来对各种移动设备进行控制的,J2EE又是整个Java运用最广泛的部分。

2.1.2 Java语言主要特点

Java语言具有很多特点优势,它是款面向对象、具有可移植性、安全性、多线程的语言。Java的运行不受计算机硬件的影响,即使计算机的操作系统不一样也可以运行,可以给绝大多数的用户使用,方便了许多,也避免了很多因为平台问题造成的影响,一个已经编译好的Java程序代码,换了一个平台也可以继续正常运行,也使得广大程序员更好得信息交流。而且Java语言代码的书写也不需要特定软件环境,甚至可以在一个最简单的记事本中书写,编译后也同样直接得到预期效果。

2.1.3 JDK

JDK是一种为Java语言服务的软件开工具包,常用于移动设备等Java程序中,Java语言更是在以JDK为核心开发的。JDK从起初发展到现在也经历了很多的版本,每个版本各有个的特点优势,都顺应了Java发展时代,从JDK1.1.4发展到现在的Java SE 8.0(1.8.0)。JDK是由javac(编译器)、jar(打包工具)、javadoc(文档生成器)等其他基本组成部件组成的。另需注意的是,新系统环境第一次都需要在笨蛋配置一下系统变量。

2.1.4 Eclipse

Eclipse是广大程序员非常喜好的开发Java程序的平台,Eclipse之所以收到用户的欢迎,是因为它是一种开放源代码,对于Java程序的开发具有良好的可扩展性。Eclise整个本身是一个大的框架平台,是由大量的插件构成的,因此它也能由用户构建与其环境无缝集成的并且有同一作用的工具,这种高度的平等和一致性吸引了大批的程序员。

2.1.5 Socket通信技术

Socket通信技术是本即时通讯系统实现的最关键的技术,其目的是通过网络的渠道,将通信双方,经由一个双向的通信连接,使得双方信息数据交互,通信双方的其中一段就是一个socket端口。Socket通信技术也成为“套接字”通信,它提供了对TCP/IP的封装,是网络通信的主要能力担当。

通俗点讲,socket通信技术可以看做是普通打电话的双方,电话用户A和B都有一个各自的电话号码,就如同在网络上通信的双方都有一个socket端口一样,要想和对方发起连接请求,就需要预先知道对方的电话号码,即网络通信的socket端口。甚至连电话区号的问题也是一致,在网络上,一台主机往往有很多的接口,这些socket接口对应着各自不同的服务功能,其之间的关系如同一座插座,每一个端口所需要的服务不同,主机就会分配给他们不同的“电压”,而当每个端口分属不同的主机,而这些端口也需要建立他们之间各自的连接,这就需要“拨打”它们每个主机所代表的区号。连接方式也是如出一辙,只要其中一个端口处于空闲状态,另一个端口就可以通过主机向该端口发送连接请求,当另一方接收数据后,就是本质上socket发送数据和接收数据的过程了。若要结束通信连接,只需要电话的双方其中一个挂掉就电话就会终止,socket通信也是这样,只要有一方关闭socket通信连接,整个通信就此结束。

剩余内容已隐藏,请支付后下载全文,论文总字数:14118字

相关图片展示:

您需要先支付 80元 才能查看全部内容!立即支付

该课题毕业论文、开题报告、外文翻译、程序设计、图纸设计等资料可联系客服协助查找;