- 1、本文档共11页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
java即时通讯系统Q设计及源码下载地址java即时通讯系统QQ设计及源码下载地址
软 件 分 析
软件名称: 即时通讯系统:山寨QQ
开发人员: sky
目 录
1、课程设计概述 2
2、课程设计题目描述 2
3、系统需求分析与设计 2
3.1 系统需求分析 2
3.2 系统设计 2
3.2.1 系统总体设计 2
3.2.2 程序详细设计 3
4、系统测试和使用说明 5
4.1 系统测试 5
4.2 系统使用说明 8
5、课程设计总结 8
5.1 遇到的问题和解决方法 8
5.2 心得体会 9
多线程与C/S综合应用——聊天系统
1、课程设计概述
我的JAVA聊天系统于20年月,持续时间为。设计主要是利用所学的面向对象程序设计语言——JAVA来编写程序,实现特定功能,以加深对的理解。设计之初只为学习,版权归冯武宝(sky)所有!未经许可,不得用于任何商业目的!
2、3、多线程功能:当客户端要求与服务器端建立连接时,服务器端就将用到多线程功能,为每一个建立起来的连接创建一个线程。这不需要消息队列,因为所有的线程都是相同的块的一个部分,并且可以共享。这样的程序比单线程模型和STA的执行速度都要因为降低了系统的负载,因而可以优化来减少系统时间ManageClientConServerThread类
ManageClientConServerThread类定义了客户端与服务器端保持通信的线程类,以及如何在进行信息的交流。它用线程来实现,意味着它是独立执行的。
ManageQqChat类
ManageQqChat类是管理用户聊天界面的类,对用户聊天界面的设计都可以通过此类实现,可以加载图片等等
ManageQqFriendList类
ManageQqFriendList类是一管理好友列表,界面和黑名单的类。在其中我们定义了一个私有的静态变量!
QqClientCon类
这个类是用来设计客户端连接服务器后台的类,首先我们发送一个请求,然后进行身份验证验证成功的话,就开始启动通信线程。
QqChat类
这是管理好友聊天界面的类,在这里我们需要事件的监听,并发生事件反应,所以我们使用了ActionListener。
QqClientLogin类
这个是用户登陆界面的类,在其中可以定义北部,中部和南部需要的组件,以及进行监听和处理。
服务器端程序设计:
整合了三个JavaBeans类,对信息进行处理
Message类
信息内容储存类,这是存储信息的公共类。
MessageType类
此类主要用来定义用户收发信息类型的类,通过此类可以改信息的类型。
User类
这个主要是储存用户身份信息的类。用户输入的身份信息,通过此类进行存储。
ManageClientThread 类
这个主要是管理用户线程的类,在这里进行用户线程的处理。
MyQqServer这是服务器类
刚开始他是出于监听状态,默认的是没有启动的,也就是没有建立连接
当我们启动服务器他就开始建立连接。
SerConClientThread类
这是客户端和服务器通信的线程,用这个类说明了在一段时间内使用的线程。
MyServerFrame类
这是服务器的控制界面,通过这个界面我们可以完成服务器的启动和关闭。
谢谢支持:/
4、系统测试和使用说明
4.1 系统测试
使用JDK运行程序时,将Qqserver子目录和 Qqclient子目录下的程序都拷贝到当前目录中,并将存放有背景的放到当前目录中,
谢谢支持:
运行服务器程序QqServer.jar,启动服务器端,窗口显示如图所示:
图1 服务器运行界面
点击启动服务器,服务器开始启动
运行第一个客户程序,QqClient.jar执行后,windows窗口会显示标题为山寨QQ的登录界面。如图2所示:
图2用户登录界面
登陆成功以后现实 以用户20为例 如图3所示:
图3客户程序的运行界面
在两个客户端程序进行信息的交流的时候。在这里以用户19和20为例如图4所示
聊天界面
发送文件界面
4.2 系统使用说明
在进行用户登录之前,我们首先启动服务器,然后从客户端进行登录,我们从中所使用的登录密码是 123456 用户名是1到50之间,由于我们的技术有限所以没有设计数据库。
谢谢支持:/
5、课程设计总结
5.1 遇到的问题和解决方法心得Swing控件Swing控件
- 9 -
文档评论(0)