package com.zhenzhigu.chat; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Vector; import javax.websocket.OnClose; import javax.websocket.OnError; import javax.websocket.OnMessage; import javax.websocket.OnOpen; import javax.websocket.Session; import javax.websocket.server.ServerEndpoint; import net.sf.json.JSONObject; @ServerEndpoint("/websocket") public class ChatServer { private static SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); private static Vector<Session> room = new Vector<Session>(); /** * 用户接入 * @param session 可选 */ @OnOpen public void onOpen(Session session){ room.addElement(session); } /** * 接收到来自用户的消息 * @param message * @param session */ @OnMessage public void onMessage(String message,Session session){ //把用户发来的消息解析为JSON对象 JSONObject obj = JSONObject.fromObject(message); //向JSON对象中添加发送时间 obj.put("date", df.format(new Date())); //遍历聊天室中的所有会话 for(Session se : room){ //设置消息是否为自己的 obj.put("isSelf", se.equals(session)); //发送消息给远程用户 se.getAsyncRemote().sendText(obj.toString()); } } /** * 用户断开 * @param session */ @OnClose public void onClose(Session session){ room.remove(session); } /** * 用户连接异常 * @param t */ @OnError public void onError(Throwable t){ System.out.println("用户连接异常..."); } }

光头强1024 LV7
2023年6月8日
Tg171017 LV12
2023年2月18日
dengjunjun LV15
2022年10月28日
364550246 LV15
2022年5月3日
弹指轻蔑 LV1
2022年3月1日
Mayoubin2001 LV21
2022年2月19日
xingbing LV9
2022年1月28日
谢小饭_ LV8
2022年1月21日
ewan007 LV30
2021年8月29日
守望 LV2
2021年7月14日

MQ-EQW
2024年12月18日
暂无贡献等级
54321zz
2024年10月15日
暂无贡献等级
蓝蓝蓝说的
2024年10月8日
暂无贡献等级
xxxyyyddd
2024年10月8日
暂无贡献等级
igher123 LV1
2024年10月8日
ljh12134546
2024年10月8日
暂无贡献等级
周鸣郝 LV2
2024年5月26日
qq970040477 LV24
2024年5月26日
lalalla159 LV3
2023年12月2日
yybb7435100 LV2
2023年8月7日