概述
在实际生产中,我们需要发布和订阅的消息可能不止一种 Topic ,故此时就需要使用自定义 Binding 来帮我们实现多 Topic 的发布和订阅功能
生产者
自定义 Output 接口,代码如下:
public interface MySource {
@Output("output1")
MessageChannel output1();
@Output("output2")
MessageChannel output2();
}
发布消息的案例代码如下:
@Autowired
private MySource source;
public void send(String msg) throws Exception {
source.output1().send(MessageBuilder.withPayload(msg).build());
}
消费者
自定义 Input 接口,代码如下:
public interface MySink {
@Input("input1")
SubscribableChannel input1();
@Input("input2")
SubscribableChannel input2();
@Input("input3")
SubscribableChannel input3();
@Input("input4"