当前位置: 首页 > news >正文

网站主机空间wordpress应用下载主题

网站主机空间,wordpress应用下载主题,手机网站建设cz35,关于服饰搭配做的比较好的网站概述 基于spingboot的websocket多人聊天系统。包括订阅,广播、点对点单人聊天,多人聊天室功能。 详细 一、运行效果 简单示例 广播 单人聊天 多人聊天室 二、相关代码 websocket配置 package com.iamgpj.demowebsocket.config;import com.iamgpj.d…

概述

基于spingboot的websocket多人聊天系统。包括订阅,广播、点对点单人聊天,多人聊天室功能。

详细

一、运行效果

简单示例

image.png

广播

image.png

单人聊天

image.png

多人聊天室

image.png

二、相关代码

websocket配置

package com.iamgpj.demowebsocket.config;import com.iamgpj.demowebsocket.v4.SocketChannelInterceptor;
import org.springframework.context.annotation.Configuration;
import org.springframework.messaging.simp.config.ChannelRegistration;
import org.springframework.messaging.simp.config.MessageBrokerRegistry;
import org.springframework.web.socket.config.annotation.EnableWebSocketMessageBroker;
import org.springframework.web.socket.config.annotation.StompEndpointRegistry;
import org.springframework.web.socket.config.annotation.WebSocketMessageBrokerConfigurer;import javax.websocket.server.ServerEndpointConfig;/*** @author Ives* @date 2020/4/20 13:51*/
@Configuration
@EnableWebSocketMessageBroker
public class WebSocketConfig extends ServerEndpointConfig.Configurator implements WebSocketMessageBrokerConfigurer {/*** 注册端点,发布或者订阅消息的时候需要连接此端点* addEndpoint websocket的端点,客户端需要注册这个端点进行链接* setAllowedOrigins 非必须,*表示允许其他域进行连接,跨域* withSockJS 允许客户端利用sockjs进行浏览器兼容性处理* @param registry*/@Overridepublic void registerStompEndpoints(StompEndpointRegistry registry) {registry.addEndpoint("/ws/endpoints-websocket")//.setAllowedOrigins("*").withSockJS();}/*** 配置消息代理* @param registry*/@Overridepublic void configureMessageBroker(MessageBrokerRegistry registry) {// 设置服务器广播消息的基础路径registry.enableSimpleBroker("/topic", "/user");// 设置客户端订阅消息的基础路径registry.setApplicationDestinationPrefixes("/app");}/** 配置频道拦截器,用于聊天室 */@Overridepublic void configureClientInboundChannel(ChannelRegistration registration) {registration.interceptors(new SocketChannelInterceptor());}
}

聊天室程序

package com.iamgpj.demowebsocket.v4;import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.messaging.simp.SimpMessagingTemplate;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Service;import java.time.LocalDateTime;
import java.util.Collection;
import java.util.HashMap;
import java.util.Map;/*** @author Ives* @date 2020/4/21 11:13*/
@Service
@Slf4j
public class ChatRoomService {@Autowiredprivate SimpMessagingTemplate template;/*** 模拟数据库中存储的用户*/public static Map<String, String> userMap = new HashMap<>();/*** 保存当前在线用户* 实际应该存储于redis等可持久化缓存服务器中,做到数据共享*/public static Map<String, String> onlineUserMap = new HashMap<>();/** 初始化数据 */static {userMap.put("张三", "111111");userMap.put("李四", "111111");userMap.put("王五", "111111");userMap.put("赵六", "111111");userMap.put("陈七", "111111");}/*** 每两秒给客户端推送当前在线用户*/@Scheduled(fixedRate = 2000)public void pushOnlineUser() {Collection<String> users = onlineUserMap.values();log.info("【聊天室在线用户】={}", users);template.convertAndSend("/topic/onlineUser", users);}/*** 推送聊天消息* @param inMessage 内容*/public void pushChatRoom(InMessage inMessage) {OutMessage outMessage = new OutMessage();BeanUtils.copyProperties(inMessage, outMessage);outMessage.setPushTime(LocalDateTime.now());template.convertAndSend("/topic/chatRoom", outMessage);}
}

三、代码结构

image.png

四、相关说明

1、项目前段使用bootstrap框架,使用maven引入webjars作为样式文件。

2、访问路径分别为

    http://localhost:8080/v1/index.html

    http://localhost:8080/v2/index.html

    http://localhost:8080/v3/tom.html

    http://localhost:8080/v3/jerry.html

    http://localhost:8080/v4/index.html

3、聊天室请分别使用不同浏览器登录测试。登录名可以为,张三、李四、王五、赵六....

http://www.yayakq.cn/news/714816/

相关文章:

  • 网站建设厘金手指排名二二开发公司是生产经营单位吗
  • 网站到期续费吗免费咨询皮肤科医生在线
  • 营销型网站建设范文免费制作h5页面平台
  • 建设网站的视频制作网站和制作网页的分别
  • 网站名称注意事项漯河网上商城网站建设
  • 网站制作的评价国家域名注册
  • 中国建设机械教育网官方网站南京网站制作费用
  • 织梦后台怎么加自己做的网站上海襄阳网站建设
  • 湖南营销型网站建设推广大学网站首页设计
  • 外贸网站设计风格wordpress赞插件
  • 兼职做效果图设计到哪个网站找郑州做优化的公司有哪些
  • 温州哪里有做网站沈阳做网站建设
  • 如何用ip做网站建造师在建项目查询网
  • 做个网站大约多少钱wordpress子域名图床
  • 移动手机网站开发南宁网站搜索引擎优化
  • 海盐网站建设在线做的网站
  • 厦门城乡建设局网站课程网站开发卷宗
  • 为男人做购物网站harmonyos开发语言
  • 做网站一般需要什么网站设计开发人员
  • 百度推广常州东莞seo建站优化方法
  • 寻找网站建设公司江西网页制作
  • 个人网站模板 html智联企业登录入口
  • 家具行业做那个国际网站比较好怎么做微帮网站
  • 浙江省台州市做网站多少钱石家庄网站制作视频
  • 网站seo快速排名优化全网营销推广案例
  • 网站建设服务商排行网站后台有安全狗
  • 网站名字怎么取最好wordpress支付宝双功能接口插件
  • 设计网站大全扣西湖南岚鸿首选网站建设需要申请经营范围
  • 最好的自助建站系统福州定制网站开发制作
  • 需要做网站的企业电话中国大工程建设需要什么样的人才