【rabbitMQ】springboot整合rabbitMQ模拟简单收发消息

目录

1.创建项目和模块

2.添加rabbitMQ依赖

3.启动rabbitMQ服务

4.引入rabbitMQ服务端信息

5.通过单元测试模拟业务发送消息

[6. 接收消息](#6. 接收消息)


1.创建项目和模块

2.添加rabbitMQ依赖

<!-- rabbitmq依赖-->

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-amqp</artifactId>

</dependency>

3.启动rabbitMQ服务

登录

4.引入rabbitMQ服务端信息

复制代码
spring:
  rabbitmq:
    port: 5672
    host: localhost
    username: guest       rabbitMQ服务端账号
    password: guest       rabbitMQ服务端密码  
    virtual-host: /       虚拟机地址 

rabbitMQ服务端用户和虚拟机操作可参考

https://blog.csdn.net/m0_67930426/article/details/134905566

5.消费者监听队列

java 复制代码
package com.example.consumer.mqListener;


import lombok.extern.slf4j.Slf4j;
import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.stereotype.Component;

@Slf4j
@Component
public class Listener {

    @RabbitListener(queues = "bbb.queue")
    public void bbb(String msg){
        System.out.println("消费者收到了bbb.queue的消息:【"+msg+"】");


    }
}

运行

6.通过单元测试模拟业务发送消息

java 复制代码
package com.example.publisher;

import org.junit.jupiter.api.Test;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;

@SpringBootTest
public class SendMessage {


    @Autowired
    private RabbitTemplate rabbitTemplate;


    @Test
    void  TestSend(){
        String queueName="aaa.queue";
        String msg="我正在使用rabbitMQ";
        rabbitTemplate.convertAndSend(queueName,msg);

    }


}

运行成功

如果队列未接收到msg,很可能是交换机未绑定该队列

因为生产者发送消息,经过交换机,再到队列,最终由消费者监听,接收消息

交换机绑定队列可以参考

https://blog.csdn.net/m0_67930426/article/details/134904365?spm=1001.2014.3001.5501

相关推荐
开longlong了吗?20 分钟前
Luan Takeaway System:基于Spring Boot + Spring Cloud的外卖业务系统
spring boot·后端·spring cloud
刘 大 望1 小时前
SpringAI Tool Calling(工具调用)
java·spring boot·spring·ai·maven·intellij-idea·文心一言
dovens2 小时前
Spring Boot(快速上手)
java·spring boot·后端
旷世奇才李先生3 小时前
065智慧农业专家远程指导系统-springboot+vue
java·vue.js·spring boot
zuoerjinshu4 小时前
【SpringBoot】讲清楚日志文件&&lombok
java·spring boot·后端
jerryxiaosa5 小时前
能源管理系统多设备对接时,业务层如何做到无感调用?ems4j 的实现思路
spring boot
李白的粉6 小时前
基于springboot的论坛网站
java·spring boot·毕业设计·课程设计·论坛网站
Hvitur6 小时前
eclipse新建SpringBoot项目
java·spring boot·eclipse
最初的↘那颗心6 小时前
Spring AI Alibaba 多模态全家桶:图片理解、图片生成与语音合成实战
spring boot·大模型·多模态·通义千问·spring ai
码喽7号6 小时前
Springboot学习五:MybatisPlus的快速上手
spring boot·学习·spring