使用socket技术实现网络聊天室和私聊功能,具体内容如下
目前创新互联已为1000+的企业提供了网站建设、域名、雅安服务器托管、网站托管、企业网站设计、蒲县网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。话不多说先上图:
1、聊天室群聊页面
在线用户的联系人列表
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) { this.type = type; } public String getMsg() { return msg; } public void setMsg(String msg) { this.msg = msg; } public String getKeyIP() { return keyIP; } public void setKeyIP(String keyIP) { this.keyIP = keyIP; } public String getTemporaryIP() { return temporaryIP; } public void setTemporaryIP(String temporaryIP) { this.temporaryIP = temporaryIP; } }