没有合适的资源?快使用搜索试试~ 我知道了~
首页基于Socket的网络聊天系统开发与设计.doc
本人以基于Java语言开发的网络聊天系统为实践基础,详细的介绍了聊天系统的功能设计和界面逻辑结构。最终实现了一个可以实现私聊、群聊、传送文件的网络聊天系统。本次设计主要以Socket网络通讯作为基础,并以Object作为通讯载体,同时运用了一定的通讯协议知识开发完成。在界面方面,采用的是Java中的Swing技术来实现。为了实现多用户的连接,在服务器端将采用多线程的技术来实现。
资源详情
资源评论
资源推荐
基于 Socket 的网络聊天系统开发与设计
摘 要
近年来随着计算机技术的飞速发展,特别是 Internet 技术的发展,已经深刻
的改变到了人们生活的方方面面。这时过去的种种陈旧的通讯方式,都已经不
能满足现代生活的需要。人们希望能够用更低廉的价格,更加方便快捷的方式,
来实现即时通讯。这时开发一套基于 Internet 技术的网络聊天系统变得尤为重要。
本人以基于 Java 语言开发的网络聊天系统为实践基础,详细的介绍了聊天
系统的功能设计和界面逻辑结构。最终实现了一个可以实现私聊、群聊、传送
文件的网络聊天系统。本次设计主要以 Socket 网络通讯作为基础,并以 Object
作为通讯载体,同时运用了一定的通讯协议知识开发完成。在界面方面,采用
的是 Java 中的 Swing 技术来实现。为了实现多用户的连接,在服务器端将采用
多线程的技术来实现。
关键词:Java Socket 通讯协议 Swing 多线程
Socket-based web chat system development and design
Abstract
Recent years, with the rapid development of computer technology, especially
Internet technology, has profound change to all aspects of people's lives. At this time
all the old past, means of communication, have been unable to meet the needs of
modern life. People want to use more low cost, more convenient and efficient way to
achieve real-time communications. Then develop a network based on Internet
technology, chat system becomes particularly important.
I developed Java-based chat system based on practice, detailed description of the
chat function of the system design and interface, logical structure. Ultimately can
achieve a whisper, group chat, send files online chat system. This design mostly
Socket network communication as the basis, and with Object as the communication
carrier, while the use of a certain protocol to complete the knowledge development. In
the interface, the use of the Java in the Swing technologies. To achieve multi-user
connection, the server will use the technology to implement multithreading.
Keywords : Java Socket Communication protocol Swing
Multithreading
目录
一.绪论.......................................................................................................................................................4
1.1 课题背景.........................................................................................................................................4
1.2 课题研究内容及意义.....................................................................................................................4
1.3 系统相关技术介绍.........................................................................................................................5
1.3.1 Java
语言概述
..........................................................................................................................5
1.3.2 TCP/IP
协议
.............................................................................................................................7
1.3.3 Socket
编程
...............................................................................................................................9
1.3.4 Swing
简介
..............................................................................................................................11
1.3.5
多线程技术介绍
....................................................................................................................12
二.系统需求分析.....................................................................................................................................15
2.1 需求分析.......................................................................................................................................15
2.2 可行性分析...................................................................................................................................16
2.3.1
社会可行性
............................................................................................................................16
2.3.2
用户可行性
............................................................................................................................16
2.3.3
技术可行性
............................................................................................................................17
2.3.4
经济可行性
............................................................................................................................17
2.3 系统开发环境...............................................................................................................................18
三.系统总体设计.....................................................................................................................................18
3.1 客户端与服务器的通信...............................................................................................................18
3.2 客户端与客户端的通信...............................................................................................................19
3.3 系统的架构模式...........................................................................................................................19
四. 系统功能模块设计............................................................................................................................21
4.1 服务器端的设计...........................................................................................................................21
4.1.1
服务器等待连接线程设计
....................................................................................................21
4.1.2
服务器处理客户端信息线程设计
........................................................................................21
4.2 客户端设计...................................................................................................................................27
4.2.1
客户端登录模块设计
............................................................................................................27
4.2.2
新用户注册模块设计
............................................................................................................28
4.2.3
客户端主界面模块设计
........................................................................................................28
4.2.4
点对点通信模块设计
............................................................................................................29
4.2.5
一对多通信模块设计
............................................................................................................30
4.2.6
点对点文件传输模块设计
....................................................................................................30
五. 系统测试............................................................................................................................................32
六.结束语.................................................................................................................................................33
七.参考文献.............................................................................................................................................33
一.绪论
1.1 课题背景
Internet 是目前世界上最大的计算机互联网络,它遍布全球,并将世界各
地不同规模和大小的网络连接成为一个整体。目前基于 Internet 的应用已经非
常多了,例如网上收发邮件、网上购物、网上看电影等等。这些应用无不在改
变人们的生活传统生活方式。
目前人们进行信息交流的方式非常多,例如电报、电话、电子邮件等通讯
手段。但是这些都存在不便利或者费用方面的问题,例如电子邮件,虽然费用
不高,甚至可以免费使用,但是无法实现即时通讯,只能作为一种辅助交流的
通讯手段。这时开发一套网络聊天系统变得尤为重要,通过该系统不但能够实
现点对点的交流,还能够实现多人同时聊天,并且可以相互传递文件资料。最
主要的是,它的费用非常低廉,信息处理速度快,这样人们才能在这个活动的
社会中加强联系,从而创建出更多的财富和价值。
1.2 课题研究内容及意义
目前已有的一些网络聊天系统已经非常多了,例如腾讯的 QQ,网易的泡
泡等等。这些网络聊天系统已经非常成熟了,不过它们都要求用户必须连接互
联网才能够进行通信。目前有很多公司,由于保密公司并不会让员工连入互联
网,所以这些软件都将无法使用。这是就需要开发一款能够在公司局域网中使
用的聊天系统,并实现公司内部员工的通讯和交流。
该系统分为服务器端和客户端两个不同的程序,其中服务器端需要运行在
公司的服务器上,而客户端需要部署到公司员工的机器上。这样员工只需要打
开客户端并登录到服务器,就可以与局域网上的其他员工彼此之间发送信息,
并传送资料了。
本课题主要研究的是基于 Socket 的聊天软件,此聊天软件分为服务器程
序和客户端程序,本课题的目标是能实现用户在客户端与服务器端传递信息。
主要研究开发内容是:熟悉系统开发平台,探索在此开发平台下,利用 Socket
编程技术、多线程开发技术、TCP/IP 协议等进行聊天软件的实际开发。具体要
实现的目标如下:(1) 实现用户的注册、登陆、修改信息等功能 (2) 实现点对
点的通信,即私聊(3) 实现一对多的通信,即群聊 (4) 实现点对点的文件传输 。
1.3 系统相关技术介绍
1.3.1 Java 语言概述
Java 语言是目前流行的一种网络编程语言,它的面向对象、跨平台和分布
应用等特点给编程人员带来一种崭新的计算概念,使 WWW 由最初的单纯提供
静态信息发展到现在的提供各种各样的动态服务。Java 不仅能够编写嵌入网页
中具有声音和动画功能的小应用程序,而且还能够应用于独立的大中型应用程
序,其强大的网络功能可以把整个 Internet 作为一个统一的运行平台,极大地
拓展了传统单机或 Client/Server 模式应用程序的外延和内涵。从 1995 年正
式问世以来,Java 逐步从一种单纯的高级编程语言发展为一种重要的 Internet
开发平台,并进而引发带动了 Java 产业的发展和壮大,成为当今计算机业界不
可忽视的力量和重要的发展潮流与方向。
(1)Java 语言的起源
最早 Java 语言的出现是源于独立开发平台语言的需要,当时人们希望能编
写出嵌入到各种家用电器等设备的芯片上、且易于维护的程序。它的出现是为
了弥补当时的编程语言,例如 C、C++等只能对特定的 CPU 芯片进行编译的
缺陷。Java 的设计者们就大胆设想让更换芯片的电器还是能够正确运行,无需
重新编译芯片,因此 Sun 公司于 1990 年成立了由 James Gosling 领导的开
发小组,开始致力于开发一种可移植的、跨平台的语言,该语言能生成正确运
行于各种操作系统、各种 CPU 芯片上的代码。经过他们的精心钻研和努力,便
促成了 Java 语言的诞生。
剩余32页未读,继续阅读
巧克力荣荣
- 粉丝: 0
- 资源: 5
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- stc12c5a60s2 例程
- Android通过全局变量传递数据
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论3