基于Java聊天系统设计(含源文件)

欢迎添加微信互相交流学习哦!

二维码

项目源码:https://gitee.com/oklongmm/biye

Java聊天系统详细设计

1 引言

1.1编写目的 
     
       聊天系统详细设计是设计的第三个阶段,这个阶段的主要任务是在聊天概要设计的基础上,对概要设计中产生的功能模块进行过程描述,设计功能模块的内部细节,包括数据结构和算法,为编写源代码提供必要的说明。
       概要设计解决了软件系统总体设计问题,包括整体软件系统的结构,功能模块的划分,模块功能和模块间的联系等,详细设计则是要解决如何实现各个模块的内部功能,及模块设计,具体的说,模块设计就是为已经产生的聊天系统各个子系统设计详细的算法,但这并不等同于系统实现阶段用具体语言编码,它只是对实现细节做精确的描述,这样编码阶段就可以将详细中对功能实现的描述,直接翻译,转化为用某种程序设计语言写的程序。


1.2 背景
   根据山东科技大学教学要求,实现理论与实践相结合的办学理念,培养21世纪高素质人才,校方安排了与操作系统课程相关的课程设计。
1.3 定义
1. 项目名称  :Java聊天系统 
2. 项目提出者:山东科技大学
3. 项目开发者:三个臭皮匠小组
4. 用户      :聊天群
5. 运行环境  :XP, win7,win8 unix操作平台
6. 开发平台  :Eclipse 、Java 
7.Eclipse:软件开发工具,J2EE可视化开发平台。
8.Java :面向对象开发语言。
1.4 参考资料 

  [1]《软件工程实验指导书》清华大学出版社 2003
  [2]王珊,萨师煊编著《数据库系统概论》高等教育出版社 2006
  [3]钱乐秋编著《软件工程》 清华大学出版社 2007
  [4]张海藩编著《软件工程导论》 清华大学出版社 2008
  [5]汤子瀛编著《计算机操作系统》第三版 西安电子科技大学出版社 2007

2.总体设计 

2.1  需求概要 

(1)用户注册模块:
     对于有意使用本产品的用户首先要登陆我官网并打开相关的账户注册链接,进入账户注册页面。根据相关提示操作:输入账户名,密码,确认密码,注册邮箱等(详细内容请到官网查询),在填写完相关信息后点击“注册”,会提示用户注册成功,并会给启用注册邮箱发送注册成功激活链接,用户只有通过打开邮箱激活成功以后才能登陆并使用本聊天软件(sisi)。

(2)客户端下载模块:

对天已经成功注册并激活的用户只需要下载本聊天软件客户端,下载成功后打开并成功安装即可使用。

(3)用记登陆模块:

用打开sisi聊天工具,会看到简洁美观的登陆界面,界面是有本聊天工具的LOG并提示用户输入已经注册成功的账号和密码,输入完成后只需要点击下方的“确认”按钮即可成功登陆本聊天软件。用户还可以点击“取消”按钮取消登陆。
    同时登陆界面还有“保存密码”“自动登陆”“登陆状态”等功能按钮,用户可以根据自己的需求自己选择。
对于还没有注册的用户也可以点击右下角“注册账号”按钮进入我官方注册网站进行账号注册。

(4)主界面功能模块:
    
    本聊天工具为用户提供了非常丰富的功能选择如:皮肤更换,状态选择,天气情况,天气预报,等级显示,联系人搜索,功能设置,好友分类,好友删除功能,私聊世界,群聊天地(根据不同的用户需求我们可以增加更多的功能以供不同的用户使用)

(5)私聊世界模块:
    
用户使用本软件时只需要点击聊天对象的头像即可进入私聊界面,在私聊界面中我们为用户提供如下的基本功能:文字聊天功能,视频聊天功能,单语音聊天功能,文件传输功能,远程协助功能,应用程序功能,在文字聊天界面中我们提供给了用户有:字体选择工具栏,表情选择工具栏,窗口抖动功能,图片发送工具栏,屏幕截图工具栏,聊天记录功能(更多功能会根据用户的需求和我们的调查在以后的软件开发中加入)

(6)群聊天地模块:

    用户如要使用群聊功能只需在主界面打开群聊功能就可使用,本软件可让用户最多可以建立3个群,并可以邀请好友加入自己建立的聊天群,也以加入别人的聊天群,并所有与用户相关的群都在用户的群聊天地显示出来,用户只需要打开要进行群聊的群号即可进入群聊功能界面。
    在群聊界面中本软件为用户提供了如下功能:群通讯录,群共享功能,群设置功能,备注名修改功能,群语音功能,群视频功能,字体选择功能,头像选择功能,表情发送工具栏,图片发送工具栏,群消息记录功能,删除群成员功能,退出群功能等等。

2.2软件结构
    
    各个模块之间的关系已由概要设计给出。
    
2.2.1客户端系统详细设计图

2.2.1.1相关功能具体实现流程

(1).登录流程:
    


(2)处理好友请求:
 

(3).注册流程
 


2.2.2服务器端系统详细设计图

2.2.2.1监听好友消息流程

  

2.2.2.2 服务器端主要类UML关系图
 
聊天室服务端主要包括7个文件,它们的功能如下:
(1)ServerListen.java:ServerListen类其父类为Thread,实现侦听客户端的连接,并响应用户登录的功能,函数run实现相应的功能,当服务器启动时就会创建侦听线程,并调用该类的start函数开始运行线程,而start函数又会调用run函数来实现。
(2)ServerReceiveThread.java:该类是实现接受客户端的信息的功能,该类主要功能在run函数中实现,当侦听线程接收到用户登录请求后就会为该用户创建一个独立的线程并调用该类的的start函数,开始运行线程而start函数又会调用run函数,真正操作在run函数中进行.成员函数sendToAll,实现向所有在线用户转发聊天信息功能在该函数中遍历用户链表依次像所有用户转发聊天信息。添加成员函数sendUerList,实现向所有在线用户发送用户列表的功能,在该函数中遍历用户链表,依次向所有在线用户发送用户链表。

猜你喜欢

转载自blog.csdn.net/weixin_55459367/article/details/114379688