项目源码
https://github.com/zhuozhuotao/chatroom
一、前言
聊天室的项目之前就已经做过,但是当时只可在控制台进行操作。最近闲着没事,边学边做完成了一份带界面的聊天室项目,做完后很开心,所以我给项目起名为乐聊,哈哈哈哈。
项目大的来说由客户端和服务端俩部分组成。
客户端:可以进行注册、登录、私聊、创建群、群聊操作,注册、登录成功后都会弹出相应的提示框。并且如果有新用户上线就会提醒其他在线用户该用户上线了,用户上线后,可以在用户列表中看到在线好友。用户可以选择一个在线好友进行私聊,或者创建群进行群聊,这里有一个细节就是只有创建群的用户可以在自己的群列表看到创建的群,其他群用户只有当第一次收到群消息时才会将群名显示在群列表中,这个细节仿照了微信创建讨论组(我才不会告诉你我想偷懒这个事实)。
对于服务端:服务端监听客户端的连接,用户登录时必须使用已经注册的用户名和密码。在服务端会显示当前的端口、IP、登录信息、在线人数,此外还会显示出聊天内容哈~就一个输出语句而已,是不是感觉很好怕?并且在用户登录的时候会实时刷新用户列表。
项目技术
- Mysql数据库
- 线程池
- 集合框架
- Socket编程
- swing组件
- 谷歌提供的json
二、功能分析
主要实现了注册、登录、加载用户列表、群聊、私聊的功能。
三、 功能模块
四、实现
客户端与服务端交互的通信格式: