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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

rabbitMQ简单使用测试

發布時間:2023/12/20 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 rabbitMQ简单使用测试 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.連接rabbitMQ jar包: springboot整合rabbitMQ

<!--rabbitMQ--> <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-amqp</artifactId><version>1.5.2.RELEASE</version> </dependency>

2.連接rabbitMQ

private Connection connection; //連接private String queueName="zsq"; //設置消息名稱@Beforepublic void before() throws IOException, TimeoutException {ConnectionFactory factory=new ConnectionFactory(); //新建連接factory.setHost("47.99.13.21"); //ipfactory.setPort(5672); //端口factory.setUsername("zsq"); //用戶名factory.setPassword("zsq2170"); //密碼 factory.setVirtualHost("/zsq"); //虛擬主機名 服務器connection=factory.newConnection(); //建立連接System.out.println("連接成功");//獲取連接amqp://zsq@47.99.13.21:5672//zsq 表示連接成功System.out.println("獲取連接"+connection);}

3.發送消息,建立生產者

@Testpublic void test01() throws IOException, TimeoutException {//1.定義通道Channel channel = connection.createChannel();//2.定義消息String msg="我是簡單模式";//3.定義隊列/** 隊列參數介紹* 1.queue 隊列名稱* 2.durable 隊列是否持久化* 3.exclusive 隊列是否提供者獨有 false* 4.autoDelete 當消息處理后,是否自動刪除* 5.arguments 是否需要傳遞多余的參數*/channel.queueDeclare(queueName,false,false, false,null);//4.將消息寫入隊列/** 參數說明:* @param exchange 交換機,將消息發送到不同的隊列中 不能為nill 傳""* @param routingKey 消息發送的標識符 不能為null 可以傳""* @param props 其他的配置文件* @param body 消息的二進制數組*/channel.basicPublish("",queueName,null,msg.getBytes());//5.關閉流 關閉連接channel.close();connection.close();System.out.println("消息隊列發送成功");}

4.執行6次,發送6次消息,查看rabbitMQ客戶端,確認隊列已經寫入6條消息

5.編輯消費者,消費消息

<!-- 消息隊列 --> <dependency><groupId>com.rabbitmq</groupId><artifactId>amqp-client</artifactId><version>3.5.1</version> </dependency>/** 編輯消費者*/@Testpublic void consumer() throws IOException, InterruptedException {//1.定義ChannelChannel channel = connection.createChannel();//2.定義隊列channel.queueDeclare(queueName,false,false,false,null);//3.定義消費者QueueingConsumer consumer=new QueueingConsumer(channel);//4.將隊列與消費者綁定.通過循環獲取隊列的消息 回復ack truechannel.basicConsume(queueName,true,consumer);while (true){byte[] body = consumer.nextDelivery().getBody();String mes=new String(body);System.out.println(mes);}}

總結

以上是生活随笔為你收集整理的rabbitMQ简单使用测试的全部內容,希望文章能夠幫你解決所遇到的問題。

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