局域网聊天系统设计报告

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

局域网聊天系统设计报告

题目局域网聊天系统

班级:

学号:

姓名:

完成时间:2015 年10 月

目录

第一章引言 ............................................................................................................................. - 2 -

1.1开发背景 ...................................................................................................................... - 2 -

1.2需求分析 ...................................................................................................................... - 2 - 第二章系统设计 .. (3)

2.1 功能设计 (3)

2.2 系统架构 ..................................................................................................................... - 5 -

2.3 模块设计 (3)

2.4 流程(或算法)设计 (5)

2.5 类与接口设计 (5)

第三章系统实现 (7)

3.1 管理子系统 (7)

第四章设计总结 (10)

参考文献 (10)

附录(核心代码) (11)

局域网聊天系统

第一章引言

本文围绕Java编程语言在网络编程方面的具体应用,论述了使用面向对象方法,对局域网聊天程序进行需求分析、概要设计、详细设计,最后使用Java 编程实现的全过程。在编程我们使用的java语言,是目前比较流行的编程语言。在当今这个网络的时代,java语言在网络编程方面的优势使得网络编程有了更好的选择。Java语言最大的特点是具有跨平台性,使其不受平台不同的影响,得到了广泛的应用。

1.1开发背景

随着互联网的发展,人们对网络的依赖越来越大,越来越离不开网络,网络聊天工具作为一种交流工具,已经受到网民的青睐。目前,出现了很多功能强大的聊天工具,其中应用比较广泛的有腾讯QQ、MSN-Messager等等。即时通讯软件,是每一个上网用户都需要的工具,它除了能够让您迅速地在网上找到自己的朋友和伙伴之外,还可以实时交谈和传递信息,截止到目前,全球约有近3亿多人使用即时软件,正因为即时通讯软件拥有数以亿计的用户和增长的市场,所以各个公司都盯上了这个最大的市场,一时间,即时通讯市场硝烟四起。而且通过制作该程序还能更好的学习网络软件编程知识。

1.2需求分析

i.寻找服务器登陆

ii.能够实现点对点单聊

iii.能够实现文件传输

iv.能动态更新在线用户列表

该系统实现了用户之间的点对点单人聊天。为了加强之间的信息交流,还实现了用户之间文件传输,文件共享。在客户端和服务器端都可以查看历史消息、保存消息、清空消息。为了监控用户之间的状态,服务器实时刷新在线用户列表,同时用户时间文件传输的信息都会在服务器上显示。

第二章系统设计

2.1 功能设计

整个系统分为服务器和客户端,服务器端维护各个客户端的信息。客户端的所有信息发往服务器端,再由服务器进行消息的分析处理并做出相应的控制,服务器端是所有信息的中心。

服务器端可以查看所有用户的聊天记录,监控所有用户的状态,发出用户上线、离线提示等公告,客户端则提供接收公告的功能。

本课程设计按照系统的具体功能要求,首先应用Socket编程创建客户端和服务器端,每多个客户端服务器端就会相因的创建一个线程,它们之间通过这个连接来实现数据通信;然后在客户端设置一个监听器,用于监听服务器发来的消息。并根据消息做出不同的动作。

2.2系统架构

(1)选择传输控制协议TCP,使用Java的Socket编程机制,分别建立客户端与服务器端使用的是UDP控制协议;

(2)分别设计客户端与服务器端的界面,并使用Java应用程序用户界面的开发工具包Swing进行窗体界面的布局,以及实现部分窗口事件的相应。

2.3 模块设计

(1)服务器端

主要实现向各个客户端发布系统消息,接受来自客户端的各种信息并分别处理。具体功能如下:

①连接控制:包括启动服务器、断开服务器以及断开某个客户端的连接;

②管理作用:包括对参与聊天者的昵称进行修改以及向所有或某个客户

端发送消息,维护一个IP地址和昵称所对应的哈希表,以

便定位到正确的客户端,且有权强制修改用户昵称;

③刷新列表:在有用户登陆或离开的时候实时更新列表,并将信息反馈到

各个客户端;

④登陆信息:检查用户是否已登陆,如登录,发消息通知所有用户。同时

刷新在线用户列表;

⑤聊天记录:能保存聊天记录,实现消息的保存、清空以及查看等功能;

⑥消息处理:解析客户端与服务器端的消息交互类型,并做出相应处理,

能够找到消息所对应的接收端。

服务器端结构如图1:

图1 服务器端结构

(2)客户端

主要实现向服务器端发布消息,并且对来自服务器的消息做出相应的响应。具体功能如下:

①连接功能:输入服务器地址,实现登录及断开功能

②登录设置:登录时,发送消息使服务器端获得相关登录信息,昵称及IP

地址记录到服务器端维持的哈希表,断开后发送消息使IP

地址及昵称从哈希表中删除;

③监听作用:实现对服务器发送过来的消息进行监听的功能;

④消息处理:接收由服务器端发送来的信息,并做出相应的响应;

相应从服务器端接收到的消息交互类型,实现用户与用户之

间的信息交互和文件交互;

客户端结构如图2:

相关文档
最新文档