实时推送前端数据"/>
java实时推送前端数据
第一次写博客,备份下代码,顺便给需要的同学看看,
网上也有很多Java整合webSocket的例子,大多自己写个类继承 WebSocketConfigurer ,
直接使用注解的比较少,我也看了很多写的运行有问题,要么代码关键部分缺少,想着自己弄一个好了,这个版本在网上某些大佬的基础上实现的,基础代码重复写没意义。
1.加入websocket依赖包
org.springframework
spring-websocket
${spring.version}
org.springframework
spring-messaging
${spring.version}
2.在Namespaces中勾选websocket
3.配置请求地址
4.拦截器配置
public class WebSocketInterceptor extends HttpSessionHandshakeInterceptor {
/**
* TODO 描述该方法的实现功能.
* @see org.springframework.web.socket.server.support.HttpSessionHandshakeInterceptor#beforeHandshake(org.springframework.http.server.ServerHttpRequest, org.springframework.http.server.ServerHttpResponse, org.springframework.web.socket.WebSocketHandler, java.util.Map)
*/
@Override
public boolean beforeHandshake(ServerHttpRequest request, ServerHttpResponse response, WebSocketHandler wsHandler,
Map attributes) throws Exception {
if(request instanceof ServletServerHttpRequest){
ServletServerHttpRequest serverHttpRequest = (ServletServerHttpRequest)request;
//获取参数
String userId = serverHttpRequest .getServletRequest().getParameter(“userId”);
attributes.put(MyMessageHandler.USER_KEY, userId);
}
return true;
}
}
5.socket用户及msg
/**
ClassName: MyMessageHandler
Function: 实现webscoket接口
@version
*/
@Service
public class MyMessageHandler imple
更多推荐
java实时推送前端数据
发布评论