SpringBoot整合RabbitMQ–RabbitTemplate的配置–方法/实例

SpringBoot整合RabbitMQ–RabbitTemplate的配置–方法/实例本文用实例介绍 SpringBoot 整合 RabbitMQ 时 RabbitTempla 的配置

原文网址:SpringBoot整合RabbitMQ–RabbitTemplate的配置–方法/实例_IT利刃出鞘的博客-CSDN博客

简介

        本文用实例介绍SpringBoot整合RabbitMQ时RabbitTemplate的配置。

confirm回调函数

作用

设置confirm回调函数。

实例

回调函数

/ * 消息发送成功的回调 * 需要开启送确认:publisher-confirms: true / @Slf4j public class RabbitConfirmCallBack implements RabbitTemplate.ConfirmCallback { @Override public void confirm(CorrelationData correlationData, boolean ack, String cause) { log.info("消息唯一标识: {}", correlationData); log.info("确认状态: {}", ack); log.info("造成原因: {}", cause); } } 

注册回调函数

@Configuration @AllArgsConstructor public class RabbitInitializingBean implements InitializingBean { private RabbitTemplate rabbitTemplate; @Override public void afterPropertiesSet() throws Exception { rabbitTemplate.setConfirmCallback(new RabbitConfirmCallBack()); } } 

return回调函数

作用

设置return回调函数。

实例​​​​​​​

回调函数

/ * 发生异常时的消息返回提醒 * 需要开启发送失败退回: publisher-returns: true / @Slf4j public class RabbitReturnCallback implements RabbitTemplate.ReturnCallback { @Override public void returnedMessage(Message message, int replyCode, String replyText, String exchange, String routingKey) { log.info("消息主体: {}", message); log.info("回复编码: {}", replyCode); log.info("回复内容: {}", replyText); log.info("交换器: {}", exchange); log.info("路由键: {}", routingKey); } } 

注册回调函数

@Configuration @AllArgsConstructor public class RabbitInitializingBean implements InitializingBean { private RabbitTemplate rabbitTemplate; @Override public void afterPropertiesSet() throws Exception { rabbitTemplate.setReturnCallback(new RabbitReturnCallback()); } } 

强制处理消息

作用

        确保没有对应的queue时每一个消息都会被处理,不会被丢弃。

实例

rabbitTemplate.setMandatory(true);

详解

        当mandatory设置为true时,若exchange根据自身类型和消息routingKey无法找到一个合适的queue存储消息,那么broker会调用basic.return方法将消息返还给生产者。当mandatory设置为false时,出现上述情况broker会直接将消息丢弃。

单独的发送连接

作用

使用单独的发送连接,避免生产者由于各种原因阻塞而导致消费者同样阻塞

实例

rabbitTemplate.setUsePublisherConnection(true); 
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/210360.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月19日 上午7:45
下一篇 2026年3月19日 上午7:46


相关推荐

  • 计算机科学与技术现状分析_信息科学与计算机科学的区别

    计算机科学与技术现状分析_信息科学与计算机科学的区别摘要:在这个科技突飞猛进发展的时代,计算机网络已经家喻户晓,在日常生活中也起着不可忽视的作用,计算机的发展提高了人们的生活质量,加快了信息的传播,现如今,各个国家都比较重视计算机科学与技术的发展,使计算机科学与技术在全国综合国力竞争的作用逐渐加大。对于这种情况,加快计算机科学与技术的发展,不但有利于人们更快捷地了解如今的发展趋势和历史,且还推动计算机科学与技术的进步,方便人们的生活。本文首先阐述了…

    2022年10月20日
    4
  • Cursor_编程神器

    Cursor_编程神器

    2026年3月16日
    3
  • ExecuteScalar

    ExecuteScalar

    2021年12月15日
    69
  • Java 发送邮件的几种方式[通俗易懂]

    Java 发送邮件的几种方式[通俗易懂]发送文件的项目地址(free):https://download.csdn.net/download/qq_36474549/10741073导入jar包:activation-1.1.jar  javax.mail-1.6.2.jar内容:1.发送一封只包含文本的简单邮件   SendEmail_text.java      2.发送包含内嵌图片的邮件   Send…

    2022年5月14日
    38
  • PyPDF2详解

    PyPDF2详解工作中可能会涉及处理pdf文件,PyPDF2就是这样一个库,使用它可以轻松的处理pdf文件,它提供了读、写、分割、合并、文件转换等多种操作。官方地址:http://mstamy2.github.io/PyPDF2/安装1.RPM式系统(Redhat、CentOS)1pipinstallpypdf22.DEB式系统(Deb…

    2022年6月23日
    34
  • navcat 激活码(JetBrains全家桶)

    (navcat 激活码)好多小伙伴总是说激活码老是失效,太麻烦,关注/收藏全栈君太难教程,2021永久激活的方法等着你。IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.htmlMLZPB5EL5Q-eyJsaWNlbnNlSW…

    2022年3月20日
    61

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号