spring mvc 实现websocket(服务器主动消息推送)

本文介绍了如何在Spring MVC项目中实现WebSocket,用于服务器主动向客户端推送消息。通过添加maven依赖,创建jsp页面,定义websocket核心类,以及完成相关配置,实现了一个简单的WebSocket Demo。用户登录后,服务器接收请求并推送消息至登录页面。详细代码和源码链接提供。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

看了好多网上能搜到的spring mvc实现websocket的教程,总算淌出了坑,搞出来一个比较纯粹的实现websocket的Demo。

 

项目运行后,可以启动一个页面进行登录,然后在另一个页面中向服务器发送请求,服务器再向登录的页面推送消息。

启动页面登录:http://127.0.0.1:8080/jyl/login/jyl

login后是用户名,登录后页面效果如图

 

再使用另一页面向服务器发送请求,请求中包含数据,服务器将消息推送到已登录的页面中,已登录页面将刷新出内容

请求为:127.0.0.1:8080/jyl/msg/jyl/我要发消息了

msg后为:/用户名/消息内容

需要源码的请这里下载:https://download.youkuaiyun.com/download/jiyanglin/10972609

 

废话不多说,直接上代码。。。

maven依赖

下面这些就够了

		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-context</artifactId>
			<version>4.1.9.RELEASE</version>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-web</artifactId>
			<version>4.1.9.RELEASE</version>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-webmvc</artifactId>
			<version>4.1.9.RELEASE</version>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-context-support</artifactId>
			<version>4.1.9.RELEASE</version>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-tx</artifactId>
			<version>4.1.9.RELEASE</version>
		</dependency>

		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-websocket</artifactId>
			<version>4.1.9.RELEASE</version>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-messaging</artifactId>
			<version>4.1.9.RELEASE</version>
		</dependency>

 

jsp页面

<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>jyl</title>
</head>
<body>
   <textarea id=&#
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值