springboot整合rabbitmq 实现消息发送和消费

Spring Boot提供了RabbitMQ的自动化配置,使得整合RabbitMQ变得非常容易。

首先,需要在pom.xml文件中引入amqp-client和spring-boot-starter-amqp依赖:

xml 复制代码
<dependency>
    <groupId>com.rabbitmq</groupId>
    <artifactId>amqp-client</artifactId>
    <version>5.5.1</version>
</dependency>

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-amqp</artifactId>
</dependency>

接下来需要在application.properties文件中配置RabbitMQ连接信息:

properties 复制代码
spring.rabbitmq.host=localhost
spring.rabbitmq.port=5672
spring.rabbitmq.username=guest
spring.rabbitmq.password=guest
spring.rabbitmq.virtual-host=/

然后编写消息发送者:

java 复制代码
@Component
public class RabbitMQSender {
    private final RabbitTemplate rabbitTemplate;

    public RabbitMQSender(RabbitTemplate rabbitTemplate) {
        this.rabbitTemplate = rabbitTemplate;
    }

    public void send(String message) {
        rabbitTemplate.convertAndSend("my-exchange", "my-routing-key", message);
    }
}

其中,my-exchange和my-routing-key是需要自己定义的交换机和路由键。

最后编写消息消费者:

java 复制代码
@Component
public class RabbitMQReceiver {
    @RabbitListener(queues = "my-queue")
    public void receive(String message) {
        System.out.println("Received message: " + message);
    }
}

其中,my-queue也是需要自己定义的队列。

在以上步骤完成后,即可实现消息的发送和消费。

相关推荐
Java患者·1 小时前
Spring Boot 3 整合 Elasticsearch 8
spring boot·后端·elasticsearch
Mr.朱鹏2 小时前
基于 postgres_fdw 的跨库查询方案
java·数据库·spring boot·sql·spring·postgresql
1368木林森2 小时前
【Spring源码17·完结篇】SpringBoot核心注解+高频坑点+失效场景万字全集!收官Spring全家桶源码系列
java·spring boot·后端
南山十一少2 小时前
基于 Quartz 组件在 Spring Boot 框架下的周期任务调度实验
java·spring boot·spring
jeffer_liu2 小时前
Spring AI 生产级实战:模型选择
java·人工智能·spring boot·后端·spring·语言模型·ai编程
JAVA面经实录9173 小时前
RabbitMQ全套学习知识手册
java·rabbitmq
学编程的小程3 小时前
配置范式演进:XML、JavaConfig 与 Spring Boot
xml·spring boot·后端
2601_961194023 小时前
考研学校专业课真题
spring boot·考研·eclipse·log4j·scala·symfony