RabbitMQ笔记(五)-RabbitTemplate

本文介绍了如何在SpringBoot中配置和使用RabbitTemplate进行消息的收发。详细讲解了ConfirmCallback和ReturnCallback接口的应用,以及如何在消息发送失败时进行回调处理。此外,还提及了从2.1版本开始,CorrelationData对象提供的ListenableFuture用于获取发送结果的改进。
摘要由CSDN通过智能技术生成

使用RabbitTemplate进行收发消息将十分的方便

首先配置bean
     @Bean
    public RabbitTemplate rabbitTemplate(CachingConnectionFactory factory){
        log.info("caching factory: {}", factory.getChannelCacheSize());
        RabbitTemplate rabbitTemplate = new RabbitTemplate(factory);
        rabbitTemplate.setConfirmCallback(rabbitConfirmCallback);

        /**
         * 当mandatory标志位设置为true时
         * 如果exchange根据自身类型和消息routingKey无法找到一个合适的queue存储消息
         * 那么broker会调用basic.return方法将消息返还给生产者
         * 当mandatory设置为false时,出现上述情况broker会直接将消息丢弃
         */
        rabbitTemplate.setMandatory(true);
        rabbitTemplate.setReturnCallback(rabbitReturnCallback);
        //使用单独的发送连接,避免生产者由于各种原因阻塞而导致消费者同样阻塞
        rabbitTemplate.setUsePublisherConnection(true);

        return rabbitTemplate;
    }

ConfirmCallback: ConfirmCallback接口用于实现消息发送到RabbitMQ交换器后接收ack回调

ReturnCallback:ReturnCallback接口用于实

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值