SpringBoot实现WebSocket群聊

一、创建项目并导入依赖

?
?

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-web</artifactId>

</dependency>

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-websocket</artifactId>

</dependency>

<!--https://mvnrepository.com/artifact/org.webjars/sockjs-client-->

<dependency>

<groupId>org.webjars</groupId>

<artifactId>sockjs-client</artifactId>

<version>1.1.2</version>

</dependency>

<!--https://mvnrepository.com/artifact/org.webjars.bower/jquery-->

<dependency>

<groupId>org.webjars.bower</groupId>

<artifactId>jquery</artifactId>

<version>3.4.1</version>

</dependency>

?
?

<!--https://mvnrepository.com/artifact/org.webjars/stomp-websocket-->

<dependency>

<groupId>org.webjars</groupId>

<artifactId>stomp-websocket</artifactId>

<version>2.3.3</version>

</dependency>

<!--https://mvnrepository.com/artifact/org.webjars/webjars-locator-core-->

<dependency>

<groupId>org.webjars</groupId>

<artifactId>webjars-locator-core</artifactId>

<version>0.38</version>

</dependency>

?
?

注:我这里js文件用jar代替,其实和jar包效果用法一样

?
?

二、相关配置代码

?
?

2.1)创建一个WebSocketConfig配置文件并实现WebSocketMessagerBrokerConfigurer

?
?

2.2)在类上方加如下注解

?
?

?
?

2.3)重写方法

?
?

?
?

2.4)Message实体类

?
?

2.5)controller

?
?

下面两个写法一样

?
?

?
?

2.6)前端chat.html

?
?

?
?

原文地址:https://www.cnblogs.com/fernfei/p/12208795.html

时间: 2024-07-29 08:18:46

SpringBoot实现WebSocket群聊的相关文章

websocket 群聊,单聊,加密,解密

群聊 from flask import Flask, request, render_templatefrom geventwebsocket.handler import WebSocketHandlerfrom gevent.pywsgi import WSGIServer from geventwebsocket.websocket import WebSocket app = Flask(__name__) # type:Flask user_socket_list = [] @app

SpringBoot实现WebSocket单聊

一.创建项目并导入依赖 ? ? <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-security</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <

使用SpringBoot开发群聊应用

通过本文你将学习如何使用Spring Boot和WebSocket API开发一个简单的群聊天应用. WebSocket是HTML5开始提供的一种在单个TCP连接上进行全双工通讯的协议.WebSocket使得客户端和服务器之间的数据交换变得更加简单,允许服务器主动向客户端推送数据.在WebSocket API中,浏览器和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传输. 很多网站为实现推送技术,所用技术都是Ajax轮询.轮询指的是在特定的时间间隔(如每1秒),由浏

spring websocket 和socketjs实现单聊群聊,广播的消息推送详解

spring websocket 和socketjs实现单聊群聊,广播的消息推送详解 WebSocket简单介绍 随着互联网的发展,传统的HTTP协议已经很难满足Web应用日益复杂的需求了.近年来,随着HTML5的诞生,WebSocket协议被提出,它实现了浏览器与服务器的全双工通信,扩展了浏览器与服务端的通信功能,使服务端也能主动向客户端发送数据. 我们知道,传统的HTTP协议是无状态的,每次请求(request)都要由客户端(如 浏览器)主动发起,服务端进行处理后返回response结果,而

Flask 实现 WebSocket 通讯---群聊和私聊

一.WebSocket介绍 WebSocket是一种在单个TCP连接实现了服务端和客户端进行双向文本或二进制数据通信的一种通信的协议. WebSocket使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据.在WebSocket API中,浏览器和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传输. 一次请求 - 服务器收到请求 开始和客户端握手 - 保持长连接 - 数据实时 - 连接永远保持 优点:长连接 并且不影响 收发请求 缺点:连接保

websocket实现群聊和单聊(转)

昨日内容回顾 1.Flask路由 1.endpoint="user" # 反向url地址 2.url_address = url_for("user") 3.methods = ["GET","POST"] # 允许请求进入视图函数的方式 4.redirect_to # 在进入视图函数之前重定向 5./index/<nid> # 动态参数路由 <int:nid> def index(nid) 6.str

代码发布项目(二)——django实现websocket(使用channels)、基于channels实现群聊功能、gojs插件、paramiko模块

一.django实现websocket django默认是不支持websocket,只支持http协议 在django中如果想要基于websocket开发项目 你需要安装模块:channles pip3 install channels==2.3 版本不要使用最新的,如果安装最新的可能会自动把你的django版本升级到最新版 对应的解释器环境建议使用3.6(官网的说法:3.5可能有问题,3.7可能也有问题...具体原因没有给解释) channels模块内部已经帮我们封装好了 握手/加密/解密 面

Java Socket通信实现私聊、群聊

前言 闲言少叙,上代码! 代码编写 server服务端 /** * 服务端 */ public class Server { private static ServerSocket server = null; private static Socket ss = null; /** * 客户端集合 */ private static Map<String, ServerThread> serverThreadMap = new HashMap<String, ServerThread&

基于flask 写的web_socket 单聊和群聊

群聊 from flask import Flask,request,render_template from geventwebsocket.handler import WebSocketHandler from gevent.pywsgi import WSGIServer from geventwebsocket.websocket import WebSocket app = Flask(__name__) user_socket_list = [] @app.route("/conn