在本章学习中,我们主要是和应用整合的。下面来看看本章我们主要内容:
成都创新互联网站建设公司一直秉承“诚信做人,踏实做事”的原则,不欺瞒客户,是我们最起码的底线! 以服务为基础,以质量求生存,以技术求发展,成交一个客户多一个朋友!专注中小微企业官网定制,做网站、网站设计,塑造企业网络形象打造互联网企业效应。整合spring AMQP和spring boot及spring cloud整合。以及在整合中需要注意及工作中踩过的坑。如同如下图:
本文主要内容:
使用代码创建rabbitAdmin,通过rabbitAdmin操作MQ
本文是《RabbitMQ精讲系列》教程中的第十八篇 高级应用整合的第一篇。如果对RabbitMQ感兴趣的朋友,可以从第一章开始。
RabbitMQ整合Spring AMQP实战
在Spring AMQP整合中,重要的组件:
RabbitAdmin类可以和好的操作RabbitMQ,在spring中直接进行注入即可:
注意:
autoStartup必须设置为ture,否则spring容器不会加载类.
为什么要获取RabbitAdmin?
RabitAdmin底层实现就是从spring容器中获取Exchange、Bingding、Routingkey以及Queue的@Bean声明。
使用RabbitTemplate的execute方法执行对应的声明、修改、删除等一系列的RabbitMQ基础功能操作。
代码演示:
添加pom文件:
需要注意:
如果spring boot 是1.5.6版本的时候,rabbit的版本号可以使用3.6.5以上
如果spring boot的版本是2.1.x的时候,rabbit的版本号可以使用5.7.x
创建rabbitMQConfig:
1:先获取到ConnectionFactory.
注意:是amqp.rabbit下的。如下图:
创建ConnectionFactory:
2:获取rabbitAdmin的代码:
注意:setAutoStartUp必须设置为true
进行测试:
因为在RabbitMQConfig中我们已经将rabbitAdmin由spring容器管理了。所以在这里,我们直接使用autowired就可以。如下图:
我们先在页面管控台查看:
并没有。启动后,在查看,是否已经创建。
测试类启动成功:
在页面管控台查看,exchange交换机是否已经创建:
已经创建成功。说明,rabbitAdmin我们成功了。
通过rabbitAdmin创建Queue:
创建绑定关系:
启动后,查看test_spring_direct_queue是否绑定了test_spring_direct交换机。
我们发现绑定成功了。
绑定方式二:使用BindingBuilder的链式
rabbitAdmin.declareBinding( |
需要注意的:当时fanout的时候,在bingdingBuilder的时候没有with.因为fanout的不需要routingkey。
本节总结:
使用spring的@Bean注解怎么创建connection工厂及怎么创建rabbitAdmin以及怎么使用。
下节预告:
我们知道在rabbitMQ的基础API中得到队列、binding以及路由是通过channel对象获取的,如下图。那么在springAMQP模式下怎么声明呢?在下节课中,我们将要讲解到的。
本文出自凯哥Java(kaigejava) 个人博客(www.kaigejava.com)
创新互联www.cdcxhl.cn,专业提供香港、美国云服务器,动态BGP最优骨干路由自动选择,持续稳定高效的网络助力业务部署。公司持有工信部办法的idc、isp许可证, 机房独有T级流量清洗系统配攻击溯源,准确进行流量调度,确保服务器高可用性。佳节活动现已开启,新人活动云服务器买多久送多久。