最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

spring單元測試下模擬rabbitmq的實現(xiàn)

 更新時間:2019年05月29日 14:56:46   作者:張占嶺  
這篇文章主要介紹了spring單元測試下模擬rabbitmq的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

gradle添加引用

compile   'org.springframework.boot:spring-boot-starter-amqp'
testCompile 'com.github.fridujo:rabbitmq-mock:1.0.10'

添加bean對象

/**
 * 模擬rabbitmq.
 */
@ActiveProfiles("test")
@Component
public class RabbitMqMock {
 @Bean
 public ConnectionFactory connectionFactory() {
  return new CachingConnectionFactory(MockConnectionFactoryFactory.build());
 }
}

添加測試的隊列

public static final String LIND_EXCHANGE = "test.basic.exchange";
 public static final String LIND_QUEUE_ROUTEKEY = "test.basic.*";
 public static final String LIND_QUEUE_ROUTEKEY1 = "test.basic.a1";
 public static final String LIND_QUEUE_ROUTEKEY2 = "test.basic.a2";
 
 /**
  * 創(chuàng)建普通交換機.
  */
 @Bean
 public TopicExchange lindExchange() {
  return (TopicExchange) ExchangeBuilder.topicExchange(LIND_EXCHANGE).durable(true)
    .build();
 }

 @Bean
 public Queue key1() {
  return new Queue(LIND_QUEUE_ROUTEKEY1);
 }

 @Bean
 public Queue key2() {
  return new Queue(LIND_QUEUE_ROUTEKEY2);
 }

 /**
  * 綁定了routekey,一個routekey可以被多個隊列綁定,類似于廣播.
  *
  * @return
  */
 @Bean
 public Binding bindBuildersRouteKey1() {
  return BindingBuilder.bind(key1())
    .to(lindExchange())
    .with(LIND_QUEUE_ROUTEKEY);
 }

 /**
  * bind.
  *
  * @return
  */
 @Bean
 public Binding bindBuildersRouteKey2() {
  return BindingBuilder.bind(key2())
    .to(lindExchange())
    .with(LIND_QUEUE_ROUTEKEY);
 }
 @Autowired
 private RabbitTemplate rabbitTemplate;

 /**
  * 發(fā)送撥打電話消息.
  */
 public void publish(String message) {
  try {
   rabbitTemplate
     .convertAndSend(MqConfig.LIND_EXCHANGE, MqConfig.LIND_QUEUE_ROUTEKEY,
       message);
  } catch (Exception e) {
   e.printStackTrace();
  }
 }
 
  /**
  * subscriber.
  *
  * @param data .
  */
 @RabbitListener(queues = MqConfig.LIND_DEAD_QUEUE)
 public void customerSign(String data) {
  try {

   logger.info("從隊列拿到數(shù)據(jù) :{}", data);

  } catch (Exception ex) {
   logger.error("簽約同步異常", ex);
  }
 }

總結:通過上面的幾行代碼,我們可以對rabbitmq隊列在測試環(huán)境中去模擬,方便了我們的測試,而這種方法比 org.apache.qpid:qpid-broker:6.1.2 這個包要方便的多,當然這個包也支持其它的qpid協(xié)議的隊列。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • Spring Security登陸流程講解

    Spring Security登陸流程講解

    本文主要介紹了Spring Security登陸流程講解,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • 全面理解java中的異常處理機制

    全面理解java中的異常處理機制

    下面小編就為大家?guī)硪黄胬斫鈐ava中的異常處理機制。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-06-06
  • 微信公眾號開發(fā)之回復圖文消息java代碼

    微信公眾號開發(fā)之回復圖文消息java代碼

    這篇文章主要為大家詳細介紹了微信公眾號開發(fā)之回復圖文消息java代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-03-03
  • Spring+Quartz配置定時任務實現(xiàn)代碼

    Spring+Quartz配置定時任務實現(xiàn)代碼

    這篇文章主要介紹了Spring+Quartz配置定時任務實現(xiàn)代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-04-04
  • 詳解Springboot整合ActiveMQ(Queue和Topic兩種模式)

    詳解Springboot整合ActiveMQ(Queue和Topic兩種模式)

    這篇文章主要介紹了詳解Springboot整合ActiveMQ(Queue和Topic兩種模式),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-04-04
  • 關于MyBatis 查詢數(shù)據(jù)時屬性中多對一的問題(多條數(shù)據(jù)對應一條數(shù)據(jù))

    關于MyBatis 查詢數(shù)據(jù)時屬性中多對一的問題(多條數(shù)據(jù)對應一條數(shù)據(jù))

    這篇文章主要介紹了MyBatis 查詢數(shù)據(jù)時屬性中多對一的問題(多條數(shù)據(jù)對應一條數(shù)據(jù)),本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-01-01
  • Java實現(xiàn)FutureTask的示例詳解

    Java實現(xiàn)FutureTask的示例詳解

    在并發(fā)編程當中我們最常見的需求就是啟動一個線程執(zhí)行一個函數(shù)去完成我們的需求,而在這種需求當中,我們需要函數(shù)有返回值。Java給我們提供了這種機制,去實現(xiàn)這一個效果:FutureTask。本文為大家準備了Java實現(xiàn)FutureTask的示例代碼,需要的可以參考一下
    2022-08-08
  • 解決feign接口返回泛型設置屬性為null的問題

    解決feign接口返回泛型設置屬性為null的問題

    這篇文章主要介紹了解決feign接口返回泛型設置屬性為null的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-06-06
  • SpringBoot中防止接口重復提交的有效方法

    SpringBoot中防止接口重復提交的有效方法

    在Web應用開發(fā)過程中,接口重復提交問題一直是一個需要重點關注和解決的難題,本文將從SpringBoot應用的角度出發(fā),探討在單機環(huán)境和分布式環(huán)境下如何有效防止接口重復提交,希望通過本文的介紹,讀者能夠掌握在SpringBoot應用中防止接口重復提交的有效方法
    2024-05-05
  • Struts2學習筆記(9)-Result配置全局結果集

    Struts2學習筆記(9)-Result配置全局結果集

    這篇文章主要介紹Struts2中使用Result配置全局結果集的方法,希望能給大家做一個參考。
    2016-06-06

最新評論

桐城市| 沈阳市| 马龙县| 神农架林区| 鄂尔多斯市| 六盘水市| 宝应县| 安康市| 朝阳区| 基隆市| 偃师市| 平邑县| 阳东县| 蒙山县| 从化市| 雅安市| 平昌县| 临邑县| 普兰县| 宁乡县| 色达县| 来凤县| 阿鲁科尔沁旗| 砚山县| 大冶市| 开鲁县| 格尔木市| 磐石市| 鄯善县| 桂林市| 定南县| 亚东县| 云龙县| 肇州县| 垣曲县| 庄浪县| 嘉鱼县| 清原| 德昌县| 新和县| 怀远县|