日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

Spring @Configuration – RabbitMQ连接

發布時間:2023/12/3 javascript 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Spring @Configuration – RabbitMQ连接 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

我一直在轉換必須使用Spring @Configuration機制配置到RabbitMQ的連接的應用程序-最初,我使用xml bean定義文件來描述配置。

這是我的原始配置:

<beans ...;><context:property-placeholder/><rabbit:connection-factory id="rabbitConnectionFactory" username="${rabbit.user}" host="localhost" password="${rabbit.pass}" port="5672"/><rabbit:template id="amqpTemplate"connection-factory="rabbitConnectionFactory"exchange="rmq.rube.exchange"routing-key="rube.key"channel-transacted="true"/><rabbit:queue name="rmq.rube.queue" durable="true"/><rabbit:direct-exchange name="rmq.rube.exchange" durable="true"><rabbit:bindings><rabbit:binding queue="rmq.rube.queue" key="rube.key"></rabbit:binding></rabbit:bindings></rabbit:direct-exchange></beans>

這是一個相當簡單的配置:

  • 建立與RabbitMQ服務器的連接,
  • 創建一個持久隊列(如果不可用)
  • 創造持久的交流
  • 并配置一個綁定,以基于稱為“ rube.key”的路由鍵將消息發送到交換機以路由到隊列

可以將其轉換為以下基于@Configuration的java配置:

@Configuration public class RabbitConfig {@Autowiredprivate ConnectionFactory rabbitConnectionFactory;@BeanDirectExchange rubeExchange() {return new DirectExchange("rmq.rube.exchange", true, false);}@Beanpublic Queue rubeQueue() {return new Queue("rmq.rube.queue", true);}@BeanBinding rubeExchangeBinding(DirectExchange rubeExchange, Queue rubeQueue) {return BindingBuilder.bind(rubeQueue).to(rubeExchange).with("rube.key");}@Beanpublic RabbitTemplate rubeExchangeTemplate() {RabbitTemplate r = new RabbitTemplate(rabbitConnectionFactory);r.setExchange("rmq.rube.exchange");r.setRoutingKey("rube.key");r.setConnectionFactory(rabbitConnectionFactory);return r;} }

該配置看起來比配置的xml版本要簡單得多。 不過我在這里有點作弊,您應該會看到缺少的connectionFactory,它只是被注入到此配置中,它是從哪里來的。這實際上是基于Spring Boot的應用程序的一部分,并且有一個Spring Boot Auto配置用于RabbitMQ connectionFactory基于在類路徑中是否存在RabbitMQ相關庫。

如果您有興趣進一步探索,這里是完整的配置– https://github.com/bijukunjummen/rg-si-rabbit/blob/master/src/main/java/rube/config/RabbitConfig.java

參考文獻:

  • Spring-AMQP項目在這里
  • 這里使用RabbitMQ的Spring-Boot入門項目

翻譯自: https://www.javacodegeeks.com/2014/10/spring-configuration-rabbitmq-connectivity.html

總結

以上是生活随笔為你收集整理的Spring @Configuration – RabbitMQ连接的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。