如何自动装配 spring 流云绑定
How to autowire spring stream cloud bindings
我在 application.yml
中定义了 error
和 notification
绑定
cloud:
stream:
bindings:
error:
destination: error
binder: default
notification:
destination: notification
binder: default
如何在我的组件中获取这些 bean?
我试过这个方法:
@Component
class MyComponent {
@Autowired
@Qualified("notification")
MessageChannel notificationChannel;
}
但是notificationChanel
没有找到。
更新
cloud.stream.bindings.*
只允许配置频道。但不创建它。
您确定您有 @EnableBinding
和适当的接口来声明 @Input
或 @Output
吗?
public interface Barista {
@Input
SubscribableChannel orders();
@Output
MessageChannel hotDrinks();
@Output
MessageChannel coldDrinks();
}
...
@EnableBinding(Barista.class)
public class CafeConfiguration {
我在 application.yml
error
和 notification
绑定
cloud:
stream:
bindings:
error:
destination: error
binder: default
notification:
destination: notification
binder: default
如何在我的组件中获取这些 bean?
我试过这个方法:
@Component
class MyComponent {
@Autowired
@Qualified("notification")
MessageChannel notificationChannel;
}
但是notificationChanel
没有找到。
更新
cloud.stream.bindings.*
只允许配置频道。但不创建它。
您确定您有 @EnableBinding
和适当的接口来声明 @Input
或 @Output
吗?
public interface Barista {
@Input
SubscribableChannel orders();
@Output
MessageChannel hotDrinks();
@Output
MessageChannel coldDrinks();
}
...
@EnableBinding(Barista.class)
public class CafeConfiguration {