ssm整合websocket详解

1、准备好一个ssm或者ssh框架项目,最好是使用maven管理的

本文以ssm为例。

2、配置pom.xml文件:

主要为了引入支持websocket的spring4 jar包。

3、编写你的WebSocket:

主要包括三部分:WebSocketConfig(注入处理器)-->MyHandler(开发自定义功能)-->MyHandshakeInterceptor(拦截器),(可参考官网提供的实例代码)

4、spring文件(applicationContext.xml、spring-mvc.xml、web.xml)配置,采用自动注入方式。

此步为难点所在:网上有好N种写法,2个配置文件组合就有N的平方种写法。经过多次试验,终于保证了webSocket与Controller同时注册成功。所以,可行的方法不仅限于本文提供的这种。

5、建立连接:

由界面中的sockjs调用,详情见源码。(注:假如你的sockjs建立连接等内容写在main.jsp,那么一旦跳转离开该界面,webSocket连接会自动断开,为了避免反复连接带来一些不必要的麻烦。本例将sockjs连接功能写在了一个界面的同时,在该界面内添加iframe,让iframe中的界面去跳转。)

6、发送消息:

在自己的controller中注入webSocket的处理器,使用其中的方法即可。
    @Autowired
    MyHandler myHandler;

    @RequestMapping("/tt")
    public String sendMsgToUser(HttpServletRequest request){
        String msg = "2016,与你相遇,猴幸运!";
        String userCd = (String) request.getSession().getAttribute("USER_CD");
        myHandler.sendMessageToUser(userCd, new TextMessage(msg));
        return "redirect:/web";

}具体代码地址:https://github.com/chenhongen/WebSocket

猜你喜欢

转载自blog.csdn.net/qq_30764991/article/details/80407228