- 1、本文档共12页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
java qq课程设计
PAGE \* MERGEFORMAT 2
引言
在网络越来越发达的今天,人们对网络的依赖越来越多,越来越离不开网络由此而产生的聊天工具越来越多,类似QQ,网络聊天是一类的聊天系统的发展日新月异,因此产生制作了类似QQ的网络聊天工具,而且通过制作改项目能更好的学习java网络编程的技术。
系统概述
这个项目是采用MVC的开发模式,swing+sqlserver 2008
2.1 系统功能概述
设置系统配置对注册用户的管理发送广播信息好友上下线提醒添加好友发送图片文件传输表情传输字体传输普通文本信息登录保存聊天记录保存聊天记录设置连接配置通信本地保存密码注册新用户服务器客户端QQ
设置系统配置
对注册用户的管理
发送广播信息
好友上下线提醒
添加好友
发送图片
文件传输
表情传输
字体传输
普通文本信息
登录
保存聊天记录
保存聊天记录
设置连接配置
通信
本地保存密码
注册新用户
服务器
客户端
QQ
系统托盘醒
系统托盘醒
2.2.1 组员
严文斐 张凡 张璇 王亮 马昌晖 柏秀良
文件夹组织结构
客户端
注释
客户端与服务器通信包
客户端与客户端通信的客户端
客户端与客户端通信的服务器
读写聊天记录的线程
管理聊天面板的类
管理好友的类
管理好友列表的类
管理与客户端连接的线程
启动客户端的线程
接受文件的线程
管理文件的路径类
保存聊天记录的类
发送文件线程
接受所有服务器的信息的线程
管理客户端登陆的类
获取和设置系统配置的类
客户端视图
表情包
登陆图片
登陆窗体
qq秀
qq头像
数据表的映射
托盘图片
声音
Cookie
保存系统配置的文件
服务器
数据表的映射
管理员实体
好友
信息实体
信息类型
注册用户的实体
服务器与客户端通信的线程
管理客户端连接的线程
启动服务器
数据访问包
处理所有的数据库访问
获取系统配置类
服务器主界面
登陆窗体
系统配置的窗体
管理用户的窗体
Sql驱动包
图片
保存服务器端配置的文件
在进行系统开发之前,需要规划文件夹组织结构。也就是说,建立多个文件夹,对各个功能模块进行划分,实现统一管理。这样做的好处在于:易于开发、管理和维护。因此建立规划系统文件夹是很有必要的。
系统预览
qq通信系统由多个程序界面组成,下面仅列出几个典型界面的预览
客户端
登录窗体
可以在本地保存qq号与密码并在登录是自动读取
配置登录的界面
设置端口号和IP
好友主界面
可以显示头像
显示用户名
接受广播信息
添加好友
好友上下线提醒
消息提醒
声音
聊天主窗体
发送普通文本
字体传递
表情传输
发送图片
文件传输
显示各自qq秀
文件传输
滚动条功能
服务器端
服务器主界面
显示在线人数
注册人数
发送广播信息
系统配置
管理用户
查询用户
增加用户
删除用户
修改用户
GUI关键代码
1.JTable 用到数据模型,用Vector向量集合保存数据。
获取一行数据的方法:
public Object getValueAt(int hang, int lie) {
return ((Vector)this.rowData.get(hang)).get(lie);
}
2.查询用户是模糊查询
public ArrayList getusers2(String q) {
ArrayList arr = findForList(select * from tb_user where u_qq like %+q+%);
setClose();
return arr;
}
3.自定义对话框其中一个例子
class UserUpdateDialog extends JDialog implements ActionListener{
public UserUpdateDialog(JPanel father){
//初始化窗体,注册监听器
}
public void actionPerformed(ActionEvent arg0) {
//处理动作事件
}
}
数据库设计
4.1数据表
数据库名称
管理员信息表
好友表
信息表
信息类型表
注册用户信息表
4.2 关系图
4.3 数据库描述
数据库部分关键的是好友的存放,这是把好友的qq和与用户信息表的qq号对应建立连接,查询时以外连的方式找出自己的qq号作为索引再在,用户信息表中找出好友的详细信息
5.关键功能的设计与实现
5.1 文件传输的实现
文件传输采用TCP/IP协议传输,以发送方为服务器,端口号又系统自动分配,这样可以实现在一台电脑上同时给多个好友传输文件而没有端口号被占用的异常,在好友同意接受的时候,发放开始读发文件,在读发的时候有两个流,对象流和带缓冲的字节流。首先是对象流,传输文件的名称和类型,接受放接受后立即建
您可能关注的文档
- GP及欧盟电子电气产品环保指令介绍.ppt
- GP IIbIIIa抑制剂在PCI中的应用课件.ppt
- GRACO喷涂技术及设备介绍.ppt
- GRE_issue_作文.doc
- Great+view+while+sleeping 最瘋狂的睡覺地點,真是太有種了.doc
- GSM分布式基站建设指导意见.doc
- GSP兽药店的执行标准(DOC 15页).doc
- gsm网络设计方案.doc
- GSP药品经营质量管理规范条款讲解(PPT 117页).ppt
- GSP质量管理解决方案.doc
- 第九章 销售与收款循环审计 .pdf
- 1.9《体积单位间的进率》说课(课件)-2024-2025学年六年级上册数学苏教版.pptx
- 长方体和正方体的体积计算(课件)-2023-2024学年人教版五年级数学下册.pptx
- 第二次月考素养提升卷(5~6单元)(试题)-2024-2025学年五年级数学上册人教版.docx
- 4.表内乘法(一)(乘加、乘减)(课件)-2024-2025学年二年级上册数学人教版.pptx
- 表内乘法(7的乘法口诀)(课件)-2024-2025学年二年级上册数学人教版.pptx
- 吨的认识(课件)-2024-2025学年三年级上册数学人教版.pptx
- 期中检测卷(试题)-2024-2025学年五年级上册语文统编版.docx
- 第七单元《扇形统计图》思维拓展练习(课件)-2024-2025学年六年级上册数学人教版.pptx
- 本文中来自ASME BPE标准委员会的现任委员将一一为您答疑解惑 .pdf
文档评论(0)