Netty+SpringBoot+FastDFS+Html5實現聊天App

Netty+SpringBoot+FastDFS+Html5實現聊天App

github鏈接: https://github.com/ShimmerPig...

數據庫

用戶表

face_image爲用戶的頭像,需要保存小圖與大圖,qrcode爲該用戶對應的二維碼
圖片描述

朋友關係表

圖片描述

好友申請表

記錄發送好友請求申請的數據表
圖片描述

聊天記錄表

sign_flag表示消息的簽收狀態,爲0表示未簽收,爲1表示已簽收
圖片描述

項目結構

圖片描述

utils包

FileUtils 主要提供了一些與文件相關的操作

IMoocJSONResult 是自定義的響應給前端的數據結構

JsonUtils 提供了一些關於json轉換的操作

MD5Utils 提供了對字符串進行md5加密的操作

QRCodeUtils 提供了一些關於二維碼的相關操作

FastDFSClient 提供了各種上傳文件以及刪除文件的操作


enums包

MsgActionEnum 發送消息的動作的枚舉,類似於消息的類型

MsgSignFlagEnum 消息簽收狀態的枚舉

OperatorFriendRequestTypeEnum 忽略或者通過好友請求的枚舉

SearchFriendsStatusEnum 添加好友前置狀態的枚舉


pojo包

增加了bo包與vo包,分別存放business object與value object / view object;


mapper包

增加了一個自定義的UsersMapperCustom,在其中自定義了查詢好友請求列表,查詢好友列表,以及批量簽收聊天消息的方法;


service包

提供如下方法:

queryUsernameIsExist 判斷用戶名是否存在

queryUserForLogin 查詢用戶是否存在

saveUser 用戶註冊

updateUserInfo 修改用戶記錄

preconditionSearchFriends 搜索朋友的前置條件

queryUserInfoByUsername 根據用戶名查詢用戶對象

sendFriendRequest 添加好友請求記錄,保存到數據庫

queryFriendRequestList 查詢好友請求

deleteFriendRequest 刪除好友請求記錄

passFriendRequest 通過好友請求

queryMyFriends 查詢好友列表

saveMsg 保存聊天消息到數據庫

updateMsgSigned 批量簽收消息

getUnReadMsgList 獲取未簽收消息列表


controller包

提供如下接口:

registOrLogin 用戶註冊/登錄

uploadFaceBase64 上傳用戶頭像

setNickname 設置用戶暱稱

searchUser 搜索好友

addFriendRequest 發送添加好友的請求

queryFriendRequests 發送添加好友的請求

operFriendRequest 接受方通過或者忽略朋友請求

myFriends 查詢我的好友列表

getUnReadMsgList 用戶手機端獲取未簽收的消息列表


測試效果

註冊與登錄

圖片描述

個人信息

圖片描述

更換頭像

圖片描述

添加好友

圖片描述

二維碼添加好友

圖片描述
圖片描述
圖片描述

接受好友請求後開始聊天

圖片描述
圖片描述



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章