Skip to content

ximoyuxiao/Mychatting

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

项目:高仿QQ聊天程序

功能设计:

用户功能:

需要对用户提供注册账号、登录、找回密码的功能模块
用户登录后从服务器获取好友列表及群组列表
双击后产生一个聊天窗口,同时如果有消息到达应该产生消息提示
文件传输功能 客户端将文件上传到服务器,服务器接收文件后产生文件链接,用户点击链接下载文件。
当退出登录的时候向服务器发送一个quit请求。

服务端功能:

监听用户的请求,同时检测用户是否在线。两手准备防止一些客户端进程意外终止导致的错误。
对注册、登录、聊天、发送文件、下载文件的事件做出相应的响应。同时需要写数据库。服务器采用读写分离,
创建的客户线程仅用于读如客户端读入的消息,在创建若一个线程将消息队列的消息写给用户

界面设计:

聊天协议设计:

聊天协议的话我们采用TCP协议。
首先需要一个前缀:

数据库设计:

1、用户信息表格 (用户ID、用户昵称、用户密码)
2、好友关系表格  (用户ID、好友ID、好友昵称)
3、群表         (群ID、群主ID,群昵称)
4、群友表      (群ID、用户ID)
5、消息表      (用户ID、群聊ID、好友ID、消息类型、消息体,消息状态,创建时间)
                                                    (待发送|已发送)

问题及其处理:

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published