rabbitMQ系列高級整合應用Spring AMQP
知識
08-05
在Rabbit基礎的API中,聲明一個exchange、聲明一個綁定、聲明一個隊列都是通過channel創建出來的。如下圖:
那麼在spring AMQP中這些對象是怎麼聲明的?
在使用springAMQP去聲明,就需要使用springAMQP的如下模式。即使用@Bean模式:
下面我們就進行代碼演示:
在上一篇代碼中修改RabbitMQConfig類。添加如下:
/**
* 針對消費者配置
* 1. 設置交換機類型
* 2. 將隊列綁定到交換機
FanoutExchange: 將消息分發到所有的綁定隊列,無routingkey的概念
HeadersExchange :通過添加屬性key-value匹配
DirectExchange:按照routingkey分發到指定隊列
TopicExchange:多關鍵字匹配
*/
說明:
我們需要根據不同的交換機特性進行設置。
如topic的:
啟動測試代碼,查看隊列:
查看交換機:
查看綁定關係:
以topic001這個交換機為例:
綁定了兩個隊列。隊列1和隊列3.routingkey分別為:spring.*和mq.*.到底對不對呢?
我們查看代碼:
可以看到代碼中確實是這麼綁定的。說明,我們聲明隊列、綁定、交換機成功。
本節總結:
通過bean註解獲取exchange、binding、queue對象。
本文是《rabbitMq精講系列》教程中的:rabbitMQ精講系列第十九篇 高級整合應用第二篇 Spring AMQP聲明。系列教程,建議從第一篇看起。
下節預告:
下節課,我們將講解一個重要對象rabbitTemplate對象。


TAG:凱哥java |