メッセージ送信

アプリケーションの任意の部分から接続されたクライアントにメッセージを送信したい場合はどうしますか? どのアプリケーションコンポーネントも brokerChannel にメッセージを送信できます。これを行う最も簡単な方法は、SimpMessagingTemplate を挿入し、それを使用してメッセージを送信することです。通常、次の例に示すように、型ごとに注入します。

@Controller
public class GreetingController {

	private SimpMessagingTemplate template;

	@Autowired
	public GreetingController(SimpMessagingTemplate template) {
		this.template = template;
	}

	@RequestMapping(path="/greetings", method=POST)
	public void greet(String greeting) {
		String text = "[" + getTimestamp() + "]:" + greeting;
		this.template.convertAndSend("/topic/greetings", text);
	}

}

ただし、同じ型の別の Bean が存在する場合、名前(brokerMessagingTemplate)で修飾することもできます。