spring boot(二)websocket

spring boot 与 webSocket

1. 广播式

1. 在配置类中使用@EnableWebSocketMessageBroker开启websocket支持。

StompEndpointRegistry.addEndpoint(“/endpointWisely”).withSocketJS();  //注册STOMP协议的节点,配置制定的url

StompEndpointRegistry.enableSimpleBroker(“/topic”);  //配置消息代理,也是服务端发送消息的url前缀

2.控制器中

@Controller

public class WsController{

@MessageMapping(“/hello”) //浏览器请求路径

@SendTo(“/topic/getResponse”)

public WiselyResponse say(WiselyMessage message){

return new WiselyResponse(“hello”+message);

}

3.页面JS中

var socket = new SockJS(‘/endpointWisely’); //对应config中配置的节点url

stompClient.subscribe(‘/topic/getResponse’) //订阅,浏览器—>服务器,对应controller中@sendTo注解的路径

stompClient.send(‘/hello’) //发送消息,服务器—>浏览器,对应controller中@MessageMapping注解的路径

2.点对点式

SimpMessagingTemplate是Spring-WebSocket内置的一个消息发送工具,可以将消息发送到指定的客户端。

@Controller

public class WsController{

@Autowired

private SimpMessagingTemplate simpMessagingTemplate;

@MessageMapping(“/point2p”) //浏览器请求路径

public void say(String message){

simpMessagingTemplate.convertAndSendToUser(“接受消息的用户”,”/topic/getResponse”, message);

}

}

且js中路径stompClient.subscribe(‘/user/topic/getResponse’),多了一个/user,表示发送消息到指定用户。

原文地址:http://blog.51cto.com/13580976/2135265

时间: 2024-09-29 02:21:25

spring boot(二)websocket的相关文章

spring boot下WebSocket消息推送

WebSocket协议 WebSocket是一种在单个TCP连接上进行全双工通讯的协议.WebSocket通信协议于2011年被IETF定为标准RFC 6455,并由RFC7936补充规范.WebSocket API也被W3C定为标准. WebSocket使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据.在WebSocket API中,浏览器和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传输 STOMP协议 STOMP是面向文本的消息传

Spring Boot——Using WebSocket to build an interactive web application

Using WebSocket to build an interactive web application This guide walks you through the process of creating a “Hello, world” application that sends messages back and forth between a browser and a server. WebSocket is a thin, lightweight layer above

spring boot(二): spring boot+jdbctemplate+sql server

前言 小项目或者做demo时可以使用jdbc+sql server解决即可,这篇就基于spring boot环境使用jdbc连接sql server数据库,和spring mvc系列保持一致. 在spring boot中使用jdbc 连接sql server数据只需要引入两个jar:spring-boot-starter-jdbc.spring-boot-starter-data-jpa 项目结构 和上篇spring boot入门保持相同 pom.xml <dependencies> <

Spring Boot二:Web 综合开发

Web 开发 Spring Boot Web 开发非常的简单,其中包括常用的 json 输出.filters.property.log 等 json 接口开发 在以前使用 Spring 开发项目,需要提供 json 接口时需要做哪些配置呢 添加 jackjson 等相关 jar 包 配置 Spring Controller 扫描 对接的方法添加 @ResponseBody 就这样我们会经常由于配置错误,导致406错误等等,Spring Boot 如何做呢,只需要类添加 @RestControll

Spring Boot 二三事:WEB 应用消息推送的那点事

阅读对象:本文适合SpringBoot 初学者及对SpringBoot感兴趣的童鞋阅读. 背景介绍:在企业级 WEB 应用开发中,为了更好的用户体验&提升响应速度,往往会将一些耗时费力的请求 (Excel导入or导出,复杂计算, etc.) 进行异步化处理. 由此带来的一个重要的问题是如何通知用户任务状态,常见的方法大致分为2类4种: HTTP Polling client pull HTTP Long-Polling client pull Server-Sent Events (SSE) s

Spring Boot (二)

SpringBoot使用JSP 1.创建一个webapp子项目 2.导入依赖 <!-- 配置springboot的父节点依赖,之后引入就不需要添加version配置了! springboot会自动选择最合适的版本进行添加依赖 --> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId&g

Spring Boot 集成 websocket(广播式)

书上配置WebSocket的方法在springboot2.x已经过时 在1.x版本中写法如下: @Configuration@EnableWebSocketMessageBroker//1public class WebSocketConfig extends AbstractWebSocketMessageBrokerConfigurer{} 在2.x之后改为: @Configuration @EnableWebSocket public class WebSocketConfig imple

玩转spring boot——websocket

前言 QQ这类即时通讯工具多数是以桌面应用的方式存在.在没有websocket出现之前,如果开发一个网页版的即时通讯应用,则需要定时刷新页面或定时调用ajax请求,这无疑会加大服务器的负载和增加了客户端的流量.而websocket的出现,则完美的解决了这些问题. spring boot对websocket进行了封装,这对实现一个websocket网页即时通讯应用来说,变得非常简单. 一.准备工作 pom.xml引入 <dependency> <groupId>org.springf

从零一起学Spring Boot之LayIM项目长成记(五)websocket

前言 距离上一篇已经比较久的时间了,项目也是开了个头.并且,由于网上的关于Spring Boot的websocket讲解也比较多.于是我采用了另外的一个通讯框架 t-io 来实现LayIM中的通讯功能.本篇会着重介绍我在研究与开发过程中踩过的坑和比较花费的时间的部分. WebSocket 在研究 t-io 的时候,我已经写过关于t-io框架的一些简单例子分析以及框架中关于 websocket 中的编解码代码分析等,有兴趣的同学可以先看一下.因为 在LayIM项目中我会是用到 Showcase D