博客
关于我
SpringBoot之RabbitMQ的简单使用的Demo
阅读量:335 次
发布时间: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/

你可能感兴趣的文章
Nginx配置代理解决本地html进行ajax请求接口跨域问题
查看>>
nginx配置全解
查看>>
Nginx配置参数中文说明
查看>>
Nginx配置后台网关映射路径
查看>>
nginx配置域名和ip同时访问、开放多端口
查看>>
Nginx配置好ssl,但$_SERVER[‘HTTPS‘]取不到值
查看>>
Nginx配置如何一键生成
查看>>
Nginx配置实例-负载均衡实例:平均访问多台服务器
查看>>
Nginx配置文件nginx.conf中文详解(总结)
查看>>
Nginx配置负载均衡到后台网关集群
查看>>
ngrok | 内网穿透,支持 HTTPS、国内访问、静态域名
查看>>
NHibernate学习[1]
查看>>
NHibernate异常:No persister for的解决办法
查看>>
NIFI1.21.0_Mysql到Mysql增量CDC同步中_日期类型_以及null数据同步处理补充---大数据之Nifi工作笔记0057
查看>>
NIFI1.21.0_NIFI和hadoop蹦了_200G集群磁盘又满了_Jps看不到进程了_Unable to write in /tmp. Aborting----大数据之Nifi工作笔记0052
查看>>
NIFI1.21.0通过Postgresql11的CDC逻辑复制槽实现_指定表多表增量同步_增删改数据分发及删除数据实时同步_通过分页解决变更记录过大问题_02----大数据之Nifi工作笔记0054
查看>>
NIFI1.21.0通过Postgresql11的CDC逻辑复制槽实现_指定表或全表增量同步_实现指定整库同步_或指定数据表同步配置_04---大数据之Nifi工作笔记0056
查看>>
NIFI1.23.2_最新版_性能优化通用_技巧积累_使用NIFI表达式过滤表_随时更新---大数据之Nifi工作笔记0063
查看>>
NIFI从MySql中增量同步数据_通过Mysql的binlog功能_实时同步mysql数据_根据binlog实现数据实时delete同步_实际操作04---大数据之Nifi工作笔记0043
查看>>
NIFI从MySql中增量同步数据_通过Mysql的binlog功能_实时同步mysql数据_配置binlog_使用处理器抓取binlog数据_实际操作01---大数据之Nifi工作笔记0040
查看>>