博客
关于我
SpringBoot之RabbitMQ的简单使用的Demo
阅读量:336 次
发布时间:2019-03-04

本文共 2314 字,大约阅读时间需要 7 分钟。

Spring Boot 与 RabbitMQ 快速入门指南

1. 基本声明

本文旨在提供使用 RabbitMQ 的基本操作指导,基于 Spring Boot 框架进行配置和使用。本文将从环境搭建、依赖管理、配置文件设置、消息发送与接收等方面进行详细说明。

2. RabbitMQ 账户配置

在使用 RabbitMQ 之前,需要先创建一个测试账户。注意:在创建账户时,虚拟主机host 必须设置为 /,否则可能会导致连接失败。这里以 root 作为测试账户。

3. 项目依赖管理

在项目的 pom.xml 文件中添加必要的依赖项:

org.springframework.boot
spring-boot-starter-parent
1.5.2.RELEASE
/
com.example
SpringBoot-RabbitMQ
0.0.1-SNAPSHOT
jar
http://maven.apache.org
UTF-8
UTF-8
1.8
org.springframework.boot
spring-boot-starter-amqp
org.springframework.boot
spring-boot-starter-actuator
org.springframework.boot
spring-boot-starter-web
org.springframework.boot
spring-boot-maven-plugin

4. 应用配置

在项目根目录下创建 application.properties 文件,并添加以下内容:

spring.application.name=rabbitmq-helloserver.port=8080spring.rabbitmq.host=localhostspring.rabbitmq.port=5672spring.rabbitmq.username=rootspring.rabbitmq.password=root

5. 主程序实现

创建 RabbitMQApplication.java 文件:

@RestController@SpringBootApplicationpublic class RabbitMQApplication {    @Autowired    private AmqpTemplate amqpTemplate;    @RequestMapping("/send")    public String send(String msg) {        amqpTemplate.convertAndSend("test", msg);        return "发送消息成功:" + msg;    }    public static void main(String[] args) {        SpringApplication.run(RabbitMQApplication.class, args);    }    @Bean    public Queue queue() {        return new Queue("test");    }    @Component    @RabbitListener(queues = "test")    public class MsgCustomer {        @RabbitHandler        public void handlerMsg(String msg) {            System.out.println("消息消费者消费:" + msg);        }    }}

6. 测试与验证

发送消息:

  • 访问 http://localhost:8080/send,输入消息内容,点击发送。
  • 打开 RabbitMQ 管理界面,查看消息队列,确认消息已成功发送至 test 队列。

消息消费:

  • 在 RabbitMQ 的管理界面中,确认 test 队列有无消费者接收消息。
  • 消息会自动由 MsgCustomer 类的 handlerMsg 方法处理,输出在控制台。

7. 总结与建议

本文详细介绍了如何在 Spring Boot 项目中集成 RabbitMQ,实现了消息的发布与订阅功能。通过本文,您可以快速上手 RabbitMQ 的使用,进行消息队列开发。对于更复杂的场景,可以参考 RabbitMQ 的官方文档或相关技术博客,进一步优化消息系统的性能和可靠性。

转载地址:http://rwrh.baihongyu.com/

你可能感兴趣的文章
PyTorch中文版官方教程来啦(附下载)
查看>>
Progress Kemp LoadMaster 远程命令执行漏洞复现(CVE-2024-1212)
查看>>
Project configuration is not up-to-date with pom.xml. Run Maven->Update Project
查看>>
Project Euler 15 Lattice paths
查看>>
Project Euler 48 Self powers( 大数求余 )
查看>>
Project Euler Problem 12: Highly divisible triangular number
查看>>
ProjectEuler 2
查看>>
projection介绍及EPSG:4326和EPSG:3857的投射转换
查看>>
project打开文件时,显示无法识别此文件格式?
查看>>
Prometheus + Grafana on Kubernetes部署
查看>>
prometheus + grafana进行服务器资源监控
查看>>
Prometheus Alertmanager 告警配置详解
查看>>
Prometheus Grafana 展示平台
查看>>
Prometheus pushgateway使用详解
查看>>
Prometheus 云原生 - Prometheus 数据模型、Metrics 指标类型、Exporter 相关
查看>>
Prometheus 云原生 - 基于 file_sd、http_sd 实现 Service Discovery
查看>>
Prometheus 云原生 - 微服务监控报警系统 (Promethus、Grafana、Node_Exporter)部署、简单使用
查看>>
Prometheus 云原生 - 监控 Linux、MySQL、Redis、RabbitMQ、Docker、SpringBoot 3.x
查看>>
Prometheus 介绍
查看>>
Prometheus 安全配置详解
查看>>