Java 实战 spingboot-rabbitmq

上一篇我们讲了 springboot 中如何使用 Redis

这一片,要写关于 springboot 中如何使用 rabbitmq

同样,pom.xml 文件配置 rabbitmq 的依赖

application.yml 文件中配置 rabbitmq 数据源

 

 建个文件夹 rabbitmq 用来存 rabbitmq 相关类

 

 创建生产者、消费者类

 

 附代码:

 1 package com.ncat.webdemo.rabbitmq;
 2 
 3 import org.springframework.amqp.core.AmqpAdmin;
 4 import org.springframework.amqp.core.AmqpTemplate;
 5 import org.springframework.beans.factory.annotation.Autowired;
 6 import org.springframework.stereotype.Component;
 7 
 8 import java.util.Map;
 9 
10 @Component
11 public class Producer {
12     @Autowired
13     private AmqpTemplate amqpTemplate;
14 
15     @Autowired
16     private AmqpAdmin amqpAdmin;
17 
18     /**
19      * @param routingKey 路由关键字
20      * @param msg        消息体
21      */
22     public void sendDirectMsg(String routingKey, String msg) {
23         amqpTemplate.convertAndSend(routingKey, msg);
24     }
25 
26     /**
27      * @param exchange   交换机
28      * @param routingKey 路由关键字
29      * @param msg        消息体
30      */
31     public void sendExchangeMsg(String exchange, String routingKey, String msg) {
32         amqpTemplate.convertAndSend(exchange, routingKey, msg);
33     }
34 
35     /**
36      * @param exchange 交换机
37      * @param msg      路由关键字
38      * @param map      消息headers属性
39      */
40     public void sendHeadersMsg(String exchange, String msg, Map<String, Object> map) {
41         amqpTemplate.convertAndSend(exchange, null, msg, message -> {
42             message.getMessageProperties().getHeaders().putAll(map);
43             return message;
44         });
45     }
46 
47 }
View Code
 1 package com.ncat.webdemo.rabbitmq;
 2 
 3 import org.springframework.amqp.rabbit.annotation.RabbitListener;
 4 import org.springframework.stereotype.Component;
 5 
 6 @Component
 7 public class Consumer {
 8     @RabbitListener(queues = "Qu_CoinTest")
 9     public void subscribeMessage(String msg) {
10         System.out.println(msg);
11     }
12 }
View Code

控制器代码修改

 

 

浏览器调用后

 

   我们可以看到从消费者类中获取到我们推到队列里的消息

 

现在我们注释掉消费者类,让消息保留在队列里

 

 

 

 

 我们从MQ的管理系统里可以看到我们推的消息了

自此,RabbitMq 和 Redis 都写完了

 

系列文章

转载于:https://www.cnblogs.com/nigthcat/p/11458829.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值