使用socket技术实现网络聊天室和私聊功能
话不多说先上图:
- 聊天室群聊页面
在线用户的联系人列表
socket连接页面
私聊页面
项目介绍
- 与服务端实现socket连接:每个客户端连接到服务器的时候,服务器会将每个连接的socket保存在list集合中。
- 群聊功能:当有一个用户发送群聊消息给服务器的时候,服务器会将所有信息转发给list列表中的所有已连接的客户端。
- 私聊功能:用户发送私聊信息给服务器后,服务器会向一个目标ip发送消息。
- 显示在线联系人列表:当有新用户登录成功的时候,服务器会将在线联系人的信息用json字符串的形式发送给客户端,客户端通过解析json字符串来获取在线联系人的信息。
自定义一个强大的类SocketEvent:客户端与服务器通信全部都是通过这个类来保存数据的,然后使用fastjson工具来把类对象转换为json字符串来传输。
public class SocketEvent {
private int type =0;
private String msg ="";
private String keyIP =""; // 关键IP
private String temporaryIP =""; // 临时IP
public SocketEvent() {
}
public int getType() {
return type;
}
public void setType(int type) {