我正在使用Spring Cloud Stream Java学习RabbitMq。对mq配置有疑问。
根据文件-spring.cloud.stream.bindings。> channelName> .destination = dest1
我正在使用下面的配置,它正在工作-
spring.cloud.stream.bindings.input.destination = dest1
但是如果我在以下输入中提及我的频道名称,则该频道名称无效-spring.cloud.stream.bindings.myChannel.destination = dest1
在我的课堂上-@INPUT('myChannel')
我的疑问是,当我提到在class和中给出的channelName时,为什么它不起作用?>
但是当我将默认值设置为.input时,它可以正常工作。 ..?
UPDATE
MyInterface.java
String CHANNEL = myChannel; @INPUT(CHANNEL ) SubscribableChannel subs();
MyListener.java
@StreamListener(MyInterface.CHANNEL) public void queueMsg(String str) { System.out.println("Str msg = "+str); }
application.prop
#Below property working fine
spring.cloud.stream.bindings.input.destination=dest1
spring.cloud.stream.bindings.input.binder=rabbit
#Below property NOT working
#spring.cloud.stream.bindings.myChannel.destination=dest1
#spring.cloud.stream.bindings.myChannel.binder=rabbit
我正在使用Spring Cloud Stream Java学习RabbitMq。对mq配置有疑问。根据文档-spring.cloud.stream.bindings。> channelName> .destination = dest1我在下面使用...
在这种情况下,通道名称是绑定名称input
。