當前位置:商標查詢大全網 - 彩票查詢 - SpringBoot集成了rabbit MQ,spring-boot-starter-amqp的使用。

SpringBoot集成了rabbit MQ,spring-boot-starter-amqp的使用。

在springBoot項目中使用rabbitMQ非常方便。spring提供了spring-boot-starter-amqp依賴,可以通過簡單的配置與spring無縫集成。

本文不介紹rabbitMQ的理論知識,主要介紹春季如何使用Rabbit MQ。

聲明壹個消費者,聲明壹個隊列和交換(如果它們不存在),然後綁定。

生產者

默認交換機實際上是直連交換機,可以理解為字符串名為空的直連交換機。如果隊列沒有指定綁定開關,它將被綁定到默認開關,routingKey是隊列的名稱。

消費者

生產者

據稱,對應於隊列壹和隊列二的兩個消費者被綁定到myFanoutExchange。因為它們是扇區交換機,所以這裏的routingKey是任意的。

生產者

聲明多個消費者,假設現場,有人在彩票店中了彩票,各級電視臺都報道了這個消息。

通配符#:壹個或多個單詞,*壹個單詞。

生產者

執行結果

兩個消費者,壹個完全匹配,壹個隨機匹配。

生產者,上述兩個消費者可以收到消息。

我們再來看另壹種聲明消費者的方式。

以上是跳羚的例子。可以看出,要聲明隊列或交換機或者綁定它們,只需要構造相應的對象並放入spring容器中,而聲明壹個監聽器(消費者)則需要構造壹個MessageListenerContainer對象。ListenerContainer至少需要知道如何連接到ConnectionFactory,監聽哪些隊列消息,以及如何處理收到的消息。

這裏我們可以猜測壹個@RabbitListener對應壹個MessageListenerContainer,自動註入ConnectionFactory。隊列名稱可以由queues、queuesToDeclare或綁定中的隊列指定,接收到的消息的處理方法可以由@RabbitHandler指定,或者只需在相應的方法上鍵入@RabbitListener。

如何設置隊列的開關和其他屬性,如持久、自動刪除等。:使用@Bean構建相應的對象並設置相應的屬性,使用註釋@Queue或@Exchange設置相應的屬性。

如何設置消費者的其他屬性,如消息確認方式、預處理消息數量等。:通過@Bean的方式構造MessageListenerContainer的對象,只需設置相應的屬性,並在@RabbitListener中用註釋指定containerFactory,然後在containerFactory中設置即可。