Broker 事件侦听器
启用 Event Exchange Plugin 后,如果将 类型的 bean 添加到应用程序上下文中,它会将选定的代理事件发布为实例,这些实例可以与普通的 Spring 或方法一起使用。
事件由代理发布到主题交换,每种事件类型具有不同的路由键。
侦听器使用事件键,这些键用于将 绑定到 交换,以便侦听器仅接收选定的事件。
由于它是主题交换,因此可以使用通配符(以及显式请求特定事件),如下例所示:BrokerEventListener
BrokerEvent
ApplicationListener
@EventListener
amq.rabbitmq.event
AnonymousQueue
@Bean
public BrokerEventListener eventListener() {
return new BrokerEventListener(connectionFactory(), "user.deleted", "channel.#", "queue.#");
}
通过使用常规的 Spring 技术,可以进一步缩小单个事件侦听器中接收的事件的范围,如下例所示:
@EventListener(condition = "event.eventType == 'queue.created'")
public void listener(BrokerEvent event) {
...
}