websocket推送方式: @SenTo()注解和SimpMessageTemplate 。
@SenTo和SimpMessageTemplate都是webSocket推送消息的方式,两者的区别在于:
- SendTo()注解固定,不灵活,固定发送给指定的订阅者。
- SimpMessageTemplate灵活,支持多种发送方式
下面展示一下SimpMessageTemplate的使用:
@Service
public class WebSocketService {
@Autowired
private SimpMessagingTemplate simpMessagingTemplate;
public void sendTopicMessage(String dest, InMessage inMessage) throws InterruptedException {
for (int i = 0; i < 10; i++) {
Thread.sleep(500L);
simpMessagingTemplate.convertAndSend(dest, new OutMessage(inMessage.getContent()+i));
}
}
}
在service中注入SimpMessagingTemplate ,
SimpMessagingTemplate模板可以灵活的调用方法传递消息