消息推送不会做?来看我怎么做!

Springboot项目中如何使用WebSocket实现消息推送

首先,我们来说一下消息推送的应用场景

1.我们现在在饭店吃饭,好多饭店都有扫码点餐自助下单的服务,那么后厨或者是前台是如何收到我们下单的信息,并且能够及时的进行处理呢?

2.我们在网吧,你登录英雄联盟的时候,整个网吧总是会响起“坐在233号的玩家,是来自德玛西亚的钻石大神”。

3.还有等等一系列的推送服务。那么消息推送到底是如何实现的呢?我们今天就来小小的探究一番。

接下来我们进入主题

1.首先我们需要在pom.xml中添加webSocket依赖,打开pom:

消息推送不会做?来看我怎么做!

webSocket依赖添加

2.因为我们使用的是springboot项目,不使用配置文件,所以我们需要在项目启动类同级目录创建一个配置类WebSocketConfig.java

消息推送不会做?来看我怎么做!

配置类

3.接下来就是编写实现类WebSocket.java,通过该类对视图层HTML、JSP进行消息推送,当然功能并不仅仅限制与此。

消息推送不会做?来看我怎么做!

WebSocket-1

消息推送不会做?来看我怎么做!

WebSocket-2

4.接下来我们需要定义在何时出发消息推送方法,一般我们将此类代码放置在service业务逻辑层,例如:在饭店我们下单成功后,逻辑层接收到数据访问层返回成功数据后,调用消息推送方法,将订单信息等等所需数据推送至后厨或者是前台。我在这里以订单为例:OrderServiceImpl.java中创建订单的方法,webSocket可以像注入Dao层一样注入,因为在上面我们已经进行了bean配置。

消息推送不会做?来看我怎么做!

业务逻辑

如此我们就将“有心的订单”这条消息发送到了WebSocket.java中,那么在webSocket中就会将我们的消息推送到接收消息的客户端。

那么接下来我们就看看在HTMl、JSP这类视图中是如何接受推送来的消息的。webSocket.js

消息推送不会做?来看我怎么做!

视图层

到现在,当有人下单时,你就可以在网页f12的控制台中看到“收到消息:有新的订单啦!”这样的消息。如果你放置了音乐,那么你就可以听到提示了。

结束语

1.webSocket的用途很广泛,可以用来做简单的消息推送,可以用来做一个即时的聊天通讯,新闻推送,公告发布等等。

2.非常感谢大家的关注,往后同样,干货不断,大家多多支持关注我!!!感谢!!!


分享到:


相關文章: