温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

SpringBoot怎样做到自动帮我们创建RabbitMQ的Queue和Exchange的

发布时间:2021-09-29 17:30:24 来源:亿速云 阅读:183 作者:柒染 栏目:大数据

这期内容当中小编将会给大家带来有关SpringBoot怎样做到自动帮我们创建RabbitMQ的Queue和Exchange的,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

  • 如果要在SpringBoot项目中查看SpringBoot帮我们做的自动配置,很简单,搜索XXXAutoConfiguration即可。

  • 如:RabbitAutoConfiguration,RedisAutoConfiguration

  • 进入RabbitAutoConfigurationSpringBoot怎样做到自动帮我们创建RabbitMQ的Queue和Exchange的解释:当classpath中存在RabbitTemplate.class, Channel.class这两个类时(即在项目中引入了RabbitMQ相关的依赖),当前配置配置类会生效。在该配置类内定义的Bean也随之生效。

  • 查看在当前配置类中注册了哪些bean,其中有一个为RabbitAdminSpringBoot怎样做到自动帮我们创建RabbitMQ的Queue和Exchange的解释:并且该Bean在未配置spring.rabbitmq.dynamic时也默认生效。

  • 进入这个类,查看在这个bean在创建的过程中进行了哪些操作。SpringBoot怎样做到自动帮我们创建RabbitMQ的Queue和Exchange的解释:可以看到,该类实现了InitializingBean接口,那么继续查看在afterPropertiesSet()方法中进行了哪些操作。SpringBoot怎样做到自动帮我们创建RabbitMQ的Queue和Exchange的

解释:在连接工厂connectionFactory中注册了一个监听器,在监听器中执行了initialize()方法。

  • 查看     initialize()方法。     SpringBoot怎样做到自动帮我们创建RabbitMQ的Queue和Exchange的     SpringBoot怎样做到自动帮我们创建RabbitMQ的Queue和Exchange的

解释:可以明显看到就是通过applicationContext.getBeansOfType(XXX.class)方法获取容器中所有类型为QueueExchangeBinding的bean,并根据这些bean的信息来帮我们在RabbitMQ创建队列,交换机和绑定关系。

  • 进入任意一个方法,如     declareExchanges()     SpringBoot怎样做到自动帮我们创建RabbitMQ的Queue和Exchange的

解释:可以看到,最终还是调用的channel.exchangeDeclare(),与我们手动调用创建的效果一致。

这是一种写代码的思路,平时可以借鉴一下。

 

上述就是小编为大家分享的SpringBoot怎样做到自动帮我们创建RabbitMQ的Queue和Exchange的了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI