没有合适的资源?快使用搜索试试~ 我知道了~
基于Socket的网络聊天系统开发与设计说明.doc
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
5星 · 超过95%的资源 1 下载量 107 浏览量
2021-09-16
13:20:24
上传
评论 1
收藏 2.37MB DOC 举报
温馨提示
试读
33页
基于Socket的网络聊天系统开发与设计说明.doc
资源推荐
资源详情
资源评论
基于 Socket 的网络聊天系统开发与设计
摘 要
近年来随着计算机技术的飞速发展,特别是 技术的发展,已经深
刻的改变到了人们生活的方方面面。这时过去的种种旧的通讯方式,都已经不
能满足现代生活的需要。人们希望能够用更低廉的价格,更加方便快捷的方式,
来实现即时通讯。这时开发一套基于 技术的网络聊天系统变得尤为重
要。
本人以基于 语言开发的网络聊天系统为实践基础,详细的介绍了聊天
系统的功能设计和界面逻辑结构。最终实现了一个可以实现私聊、群聊、传送
文件的网络聊天系统。本次设计主要以 网络通讯作为基础,并以
作为通讯载体,同时运用了一定的通讯协议知识开发完成。在界面方面,
采用的是 中的 技术来实现。为了实现多用户的连接,在服务器端
将采用多线程的技术来实现。
关键词:通讯协议 多线程
Socket-based web chat system
development and design
Abstract
!
"#
$ %
$
&
1 / 33
' %
%$
Keywords : (
)
目录
一.绪论.......................................................................................................................................................3
1.1 课题背景.........................................................................................................................................3
1.2 课题研究容与意义.........................................................................................................................3
1.3 系统相关技术介绍.........................................................................................................................4
1.3.1 Java
语言概述
..........................................................................................................................4
1.3.2 TCP/IP
协议
.............................................................................................................................6
1.3.3 Socket
编程
...............................................................................................................................8
1.3.4 Swing
简介
..............................................................................................................................10
1.3.5
多线程技术介绍
.....................................................................................................................11
二.系统需求分析.....................................................................................................................................15
2.1 需求分析.......................................................................................................................................15
2.2 可行性分析...................................................................................................................................15
2.3.1
社会可行性
............................................................................................................................16
2.3.2
用户可行性
............................................................................................................................16
2.3.3
技术可行性
............................................................................................................................16
2.3.4
经济可行性
............................................................................................................................16
2.3 系统开发环境...............................................................................................................................17
三.系统总体设计.....................................................................................................................................17
3.1 客户端与服务器的通信...............................................................................................................17
3.2 客户端与客户端的通信...............................................................................................................18
3.3 系统的架构模式...........................................................................................................................19
四. 系统功能模块设计............................................................................................................................20
4.1 服务器端的设计...........................................................................................................................20
4.1.1
服务器等待连接线程设计
....................................................................................................20
4.1.2
服务器处理客户端信息线程设计
........................................................................................21
4.2 客户端设计...................................................................................................................................27
4.2.1
客户端登录模块设计
............................................................................................................27
2 / 33
4.2.2
新用户注册模块设计
............................................................................................................27
4.2.3
客户端主界面模块设计
........................................................................................................28
4.2.4
点对点通信模块设计
............................................................................................................29
4.2.5
一对多通信模块设计
............................................................................................................29
4.2.6
点对点文件传输模块设计
....................................................................................................30
五.系统测试.............................................................................................................................................32
六.结束语.................................................................................................................................................33
七.参考文献.............................................................................................................................................33
一.绪论
1.1 课题背景
是目前世界上最大的计算机互联网络,它遍布全球,并将世界各
地不同规模和大小的网络连接成为一个整体。目前基于 的应用已经非
常多了,例如网上收发、网上购物、网上看电影等等。这些应用无不在改变人
们的生活传统生活方式。
目前人们进行信息交流的方式非常多,例如电报、、电子等通讯手段。但
是这些都存在不便利或者费用方面的问题,例如电子,虽然费用不高,甚至可
以免费使用,但是无法实现即时通讯,只能作为一种辅助交流的通讯手段。这
时开发一套网络聊天系统变得尤为重要,通过该系统不但能够实现点对点的交
流,还能够实现多人同时聊天,并且可以相互传递文件资料。最主要的是,它
的费用非常低廉,信息处理速度快,这样人们才能在这个活动的社会中加强联
系,从而创建出更多的财富和价值。
1.2 课题研究容与意义
目前已有的一些网络聊天系统已经非常多了,例如腾讯的 ,网易的泡泡
3 / 33
等等。这些网络聊天系统已经非常成熟了,不过它们都要求用户必须连接互联
网才能够进行通信。目前有很多公司,由于公司并不会让员工连入互联网,所
以这些软件都将无法使用。这是就需要开发一款能够在公司局域网中使用的聊
天系统,并实现公司部员工的通讯和交流。
该系统分为服务器端和客户端两个不同的程序,其中服务器端需要运行在
公司的服务器上,而客户端需要部署到公司员工的机器上。这样员工只需要打
开客户端并登录到服务器,就可以与局域网上的其他员工彼此之间发送信息,
并传送资料了。
本课题主要研究的是基于 的聊天软件,此聊天软件分为服务器程
序和客户端程序,本课题的目标是能实现用户在客户端与服务器端传递信息。
主要研究开发容是:熟悉系统开发平台,探索在此开发平台下,利用
编程技术、多线程开发技术、%("*" 协议等进行聊天软件的实际开发。具体要
实现的目标如下:+,-实现用户的注册、登陆、修改信息等功能 +.-实现点对
点的通信,即私聊+/-实现一对多的通信,即群聊 +0-实现点对点的文件传输 。
1.3 系统相关技术介绍
1.3.1 Java 语言概述
语言是目前流行的一种网络编程语言,它的面向对象、跨平台和分布
应用等特点给编程人员带来一种崭新的计算概念,使 111 由最初的单纯提供
静态信息发展到现在的提供各种各样的动态服务。 不仅能够编写嵌入网页
中具有声音和动画功能的小应用程序,而且还能够应用于独立的大中型应用程
序,其强大的网络功能可以把整个 作为一个统一的运行平台,极拓展
了传统单机或 (* 模式应用程序的外延和涵。从 ,223 年正式问世
以来, 逐步从一种单纯的高级编程语言发展为一种重要的 开发
平台,并进而引发带动了 产业的发展和壮大,成为当今计算机业界不可忽
视的力量和重要的发展潮流与方向。
(,) 语言的起源
最早 语言的出现是源于独立开发平台语言的需要,当时人们希望能编
4 / 33
写出嵌入到各种家用电器等设备的芯片上、且易于维护的程序。它的出现是为
了弥补当时的编程语言,例如 (、(44等只能对特定的 ("& 芯片进行编译的
缺陷。 的设计者们就大胆设想让更换芯片的电器还是能够正确运行,无需
重新编译芯片,因此 公司于 ,225 年成立了由 6 领导的开
发小组,开始致力于开发一种可移植的、跨平台的语言,该语言能生成正确运
行于各种操作系统、各种 ("& 芯片上的代码。经过他们的精心钻研和努力,便
促成了 语言的诞生。
(.) 语言的发展前景
在 .553 年的 开发者大会上,6 做了题为“
技术下一个 ,5 年贡献”的演讲,6 认为, 技术提高了计算的
“流动性”,就如同货币的发明提高了商品的流动性一样。无所不在的网络丰富
了每个人的信息量,就如同可以兑换的货币产生了财富一样。由于从前的网络
速度是很慢的,所以计算被束缚在特定的计算机上,而这种情况将一去不复返
了。
目前,全球 开发人员已经超过 035 万,因此 社区是一个充满活
力和创新精神的团队,这正是 更加繁荣的保障。为了保持 的增长和
推进 社区的参与, 在 开发者大会上宣布开放 核心源
代码,以鼓励更多的人参与到社团活动中来,这是 为推进社团发展和维护
技术兼容性而迈出的重要一步,同时也是 技术在创新和社会进步上
继续发挥重要作用的标志。
随着 的开源,在未来的十年里, 的应用围将变得更广。数字媒
体将是 的下一个目标,同时, 将教育和健康作为未来 发展过程
中的两大重点应用领域。
(/) 的语法
是面向对象的程序设计语言,其基本语法和 ( 语言大致一样。从一定
角度上讲,( 语言加上面向对象功能就是 (44。那么 与 (44有什么区别
呢?简要地说, 改进了 (44的一些缺点,并增加了一些新的功能,从而
变得比 (44更加简单、易学,编写出来的程序也更具健壮性。下面就对它们进
行一个简单的比较。
5 / 33
剩余32页未读,继续阅读
资源评论
- Ambition132022-05-10用户下载后在一定时间内未进行评价,系统默认好评。
yunxidzh
- 粉丝: 60
- 资源: 30万+
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功