|
对于最新稳定版本,请使用 Spring Framework 7.0.6! |
好处
使用 STOMP 作为子协议,相较于直接使用原始 WebSocket,能够让 Spring Framework 和 Spring Security 提供更丰富的编程模型。这一点与 HTTP 相较于原始 TCP 的优势类似——HTTP 使得 Spring MVC 及其他 Web 框架能够提供丰富的功能。以下是使用 STOMP 的一些优势:
-
无需发明自定义的消息协议和消息格式。
-
提供了 STOMP 客户端,其中包括 Spring 框架中的Java 客户端。
-
您可以(可选地)使用消息代理(例如 RabbitMQ、ActiveMQ 等)来管理订阅和广播消息。
-
应用程序逻辑可以组织在任意数量的
@Controller实例中,消息可以根据 STOMP 目标头进行路由,而不是针对给定连接使用单个WebSocketHandler来处理原始 WebSocket 消息。 -
你可以使用 Spring Security 根据 STOMP 目的地和消息类型来保护消息的安全。