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也是需要自己定义的队列。

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

相关推荐
double丶flower5 分钟前
Spring Boot 中使用 @Transactional 注解配置事务管理
数据库·spring boot·sql
阑梦清川24 分钟前
RabbitMQ介绍和快速上手案例
分布式·rabbitmq·ruby
泰山小张只吃荷园25 分钟前
使用Redis的一些经验总结
java·数据库·spring boot·redis·缓存
菜鸟分享录30 分钟前
RabbitMQ教程:工作队列(Work Queues)(二)
分布式·rabbitmq·ruby
徐寿春40 分钟前
SpringBoot -- 自动化装配源码
spring boot·后端·自动化
极客先躯1 小时前
高级java每日一道面试题-2024年11月08日-RabbitMQ篇-RabbitMQ有哪些重要的角色?有哪些重要的组件?
java·rabbitmq·java-rabbitmq
糖拌西红柿多放醋2 小时前
SpringBoot整合Mybatis-Plus实践汇总
java·spring boot·后端·mybatis
basic_code3 小时前
Docker部署Kafka集群,增加 SASL_SSL认证,并集成到Spring Boot,无Zookeeper版
spring boot·docker·kafka·kafka集群
ChinaRainbowSea3 小时前
4. Spring Cloud Ribbon 实现“负载均衡”的详细配置说明
java·spring boot·后端·spring·spring cloud·ribbon·负载均衡
代码小鑫6 小时前
A035-基于Spring Boot的企业内管信息化系统
java·开发语言·spring boot·后端·spring