SimpMessagingTemplate与MessageSendingOperations

时间:2014-04-04 07:33:35

标签: spring websocket stomp

我刚刚开始研究Spring 4对websocket的攻击。这两者有什么不同?我应该在哪一种情况下使用另一种情况?

2 个答案:

答案 0 :(得分:3)

没有区别:MessageSendingOperations是一个接口 - 合同。 SimpMessagingTemplate是第一个的具体实现。

通常,为具体实现配置bean就足够了,但是按照其conctract的类型注入它:

@Bean
public MessageSendingOperations messagingTemplate() {
    return new SimpMessagingTemplate(this.inputChannel);
}

...

@Component
public class MyService {

   @Autowired
   private MessageSendingOperations  messagingTemplate;
}

答案 1 :(得分:0)

虽然SimpMessagingTemplate类确实实现了MessageSendingOperations接口中指定的协定,但是实际上,当您要将消息发送给特定用户时,您将使用SimpMessagingTemplate。 / p>

这是因为(在撰写本文时)SimpMessageTemplate还实现了提供SimpMessageSendingOperations方法主体的子接口convertAndSendToUser