前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >rabbitMQ系列高级整合应用Spring AMQP

rabbitMQ系列高级整合应用Spring AMQP

原创
作者头像
凯哥Java
修改2019-08-05 11:41:29
4150
修改2019-08-05 11:41:29
举报
文章被收录于专栏:凯哥Java凯哥Java

在Rabbit基础的API中,声明一个exchange、声明一个绑定、声明一个队列都是通过channel创建出来的。如下图:

那么在spring AMQP中这些对象是怎么声明的?

在使用springAMQP去声明,就需要使用springAMQP的如下模式。即使用@Bean模式:

下面我们就进行代码演示:

在上一篇代码中修改RabbitMQConfig类。添加如下:

/** * 针对消费者配置 * 1. 设置交换机类型 * 2. 将队列绑定到交换机 FanoutExchange: 将消息分发到所有的绑定队列,无routingkey的概念 HeadersExchange :通过添加属性key-value匹配 DirectExchange:按照routingkey分发到指定队列 TopicExchange:多关键字匹配 */

说明:

我们需要根据不同的交换机特性进行设置。

如topic的:

启动测试代码,查看队列:

查看交换机:

查看绑定关系:

以topic001这个交换机为例:

绑定了两个队列。队列1和队列3.routingkey分别为:spring.*和mq.*.到底对不对呢?

我们查看代码:

可以看到代码中确实是这么绑定的。说明,我们声明队列、绑定、交换机成功。

本节总结:

通过bean注解获取exchange、binding、queue对象。

本文由凯哥Java(凯哥Java)发布于凯哥个人博客。

凯哥公众号:凯哥Java(kaigejava)。个人博客:www.kaigejava.com

本文是《rabbitMq精讲系列》教程中的:rabbitMQ精讲系列第十九篇 高级整合应用第二篇 Spring AMQP声明。系列教程,建议从第一篇看起。

下节预告:

下节课,我们将讲解一个重要对象rabbitTemplate对象。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档