分享好友 最新动态首页 最新动态分类 切换频道
基于html5-websocket的网页版聊天室,后台使用springMVC和mybatis框架.zip
2024-12-26 11:29
package com.pxy.chat; import java.io.IOException; import java.util.concurrent.CopyOnWriteArraySet; import javax.websocket.*; import javax.websocket.server.ServerEndpoint; import com.pxy.entity.User; @ServerEndpoint("/check_user") public class H5ServletServerSocket { // 静态变量,用来记录当前在线连接数。应该把它设计成线程安全的。 private static int onlineCount = 1; // concurrent包的线程安全Set,用来存放每个客户端对应的MyWebSocket对象。若要实现服务端与单一客户端通信的话,可以使用Map来存放,其中Key可以为用户标识 private static CopyOnWriteArraySet<H5ServletServerSocket> webSocketSet = new CopyOnWriteArraySet<H5ServletServerSocket>(); // 与某个客户端的连接会话,需要通过它来给客户端发送数据 private Session session; @OnOpen public void onOpen(Session session) { this.session = session; webSocketSet.add(this); // 加入set中 addOnlineCount(); // 在线数加1 System.out.println("有新连接加入!当前在线人数为" + getOnlineCount()); } @OnClose public void onClose() { webSocketSet.remove(this); // 从set中删除 subOnlineCount(); // 在线数减1 System.out.println("有一连接关闭!当前在线人数为" + getOnlineCount()); } @OnMessage public void onMessage(String message, Session session) { System.out.println("来自客户端的消息:" + message); // 群发消息 for (H5ServletServerSocket item : webSocketSet) { try { item.sendMessage(message); } catch (IOException e) { e.printStackTrace(); continue; } } } @OnError public void onError(Session session, Throwable error) { System.out.println("发生错误"); error.printStackTrace(); } public void sendMessage(String message) throws IOException { this.session.getBasicRemote().sendText(message); // this.session.getAsyncRemote().sendText(message); } //获得当前在线人数 public static synchronized int getOnlineCount() { return onlineCount; } public static synchronized void addOnlineCount() { H5ServletServerSocket.onlineCount++; } public static synchronized void subOnlineCount() { H5ServletServerSocket.onlineCount--; }
最新文章
AI病理助手来了!浙大OmniPT上岗,3秒锁定癌症病灶,准确率超95%
机器之心发布机器之心编辑部病理是疾病诊断的「金标准」,而我国面临病理诊断人才严重匮乏窘境。近年来癌症发病率不断攀升,如何借助 AI 赋能医生精准诊断,提高工作效率及医疗质量,成为当前世界病理学科的前沿热点。近日,浙江大学发布了
A股:AI视频生成概念上市公司龙头名单(梳理)(2024/12/13)
据南方财富网概念查询工具数据显示,AI视频生成概念上市公司龙头股名单:信雅达:AI视频生成龙头。信雅达2024年第三季度,公司营收同比增长-6.83%至5.02亿元,信雅达毛利润为1.55亿,毛利率30.8%,扣非净利润同比增长-58.96%至2939.83万元
2024年广州荔湾区高三补习班有哪些>top5按实力排行榜
2024年广州荔湾区高三补习班有哪些top5按实力排行榜  2. 广州荔湾区高三复读辅导班  3. 广州荔湾区立行高考复读冲刺班  4. 广州荔湾区立行高中复读集训班
facebook如何精准找客户?facebook找客户技巧
随着社媒的的发展,像在领英、脸书、ins等平台上进行拓客的手段也层出不穷。那facebook如何精准找客户呢?下面就为大家分享一下facebook找客户技巧,一起来看看吧。facebook找客户技巧1.利用facebook主页小组联动进行开发这一点是基于你的
Linux下无root权限Matlab安装
先前为算一个例子,需要在一个小集群上安装Matlab软件,由于没有root权限,颇费了一些周折。将经验分享如下,如转载,请注明出处。安装环境:小集群中上一个节点软件版本:Matlab-2010b登陆主节点,并ssh切换到server11.获取安装文件找到安
2024年用户眼中最流畅的手机系统排行揭晓,国产崛起 iOS稳居榜首
近年来,随着手机市场的竞争日益激烈,各大厂商在硬件不断升级的同时,对操作系统的优化也是不遗余力。用户对流畅度、稳定性、功能性等方面的需求越来越高,因此,“用户眼中最丝滑流畅的手机系统排行”成为了一个值得关注的话题。结合鲁大
5.4 病毒式传播内容
本文翻译自SEO大神光头强(Brian Dean)内容营销系列教程《第五章:内容推广》里的第四节《病毒式传播内容》。内容摘要:能在网上像病毒一样传播的爆款文章,会给你带来可观的流量。 这篇文章告诉你病毒式传播内容的写作方法:如何找话题、哪
360清理大师[编辑]
概述360清理大师是360奇虎科技有限公司开发的智能手机应用,是一款完全免费的手机加速与空间清理软件,功能强大,操作简单,作为360用户对清理大师的功能特征,使用方法等都必须了解。360清理大师:更简单,更畅快!用户信赖的手机清理神器
CGTN专访丨梁正:中国在人工智能监管领域的探索与实践
编者按 近年来,人工智能领域发展迅猛,技术更新迭代节奏很快。如何确保这项技术良性发展,中国在人工智能监管方面取得了哪些成果?近日,CGTN记者专访清华大学公共管理学院教授、清华大学人工智能国际治理研究院副院长梁正,就人工智能监
1688入驻流程是什么?具体怎么做?(入驻1688需要什么条件)
在数字化时代,电商平台已成为企业开展业务的重要渠道之一。阿里巴巴旗下的1688平台,作为国内领先的B2B电子商务平台,吸引了众多企业的目光。那么,如何在1688上成功入驻呢? 入驻1688平台,需要了解并遵循其入驻流程。这一过程主要包括注
相关文章
推荐文章
发表评论
0评