使用默认的rabbtiTemplate的话,如何实现发送者消息确认和消息返回的实现逻辑?

来源:5-12 利用RabbitListener快速实现消息处理器(下)

limeOracle

2021-03-25

  1. 如果使用默认的rabbitTemplate(及全部使用application.properties的配置),但是消息发送确认confirmListener和消息返回returnListener的实现逻辑在那里配置?
  2. 如果通过配置类显式声明rabbitTemplate的话,application.properties的配置又不起作用(比如spring.rabbitmq.template.mandatory=true)。
  3. 总的来说,如何在使用配置文件的情况下实现消息发送确认confirmListener和消息返回returnListener的实现逻辑?
写回答

1回答

Moody

2021-03-25

我在官方文档没找到可以通过配置 设置ConfirmListener和returnListener的方法,如果实在需要通过配置文件来设置ConfirmListener和returnListener,可以试试使用xml声明rabbitTemplate,并在xml里调用两个set方法。(这个办法我也没有试过)

 Returns are sent to the client by it registering a RabbitTemplate.ReturnsCallback by calling setReturnsCallback(ReturnsCallback callback).
Confirms are sent to the client by it registering a RabbitTemplate.ConfirmCallback by calling setConfirmCallback(ConfirmCallback callback).

参考:

官方文档:https://docs.spring.io/spring-amqp/docs/current/reference/html/#template-confirms

Spring 在applicationContext.xml文件中调用某个对象的方法并赋值:

https://blog.csdn.net/MRZZXzzx/article/details/77513106

0
3
Moody
回复
limeOracle
这样可以
2021-03-25
共3条回复

RabbitMQ精讲,提升工程实践能力,培养架构思维

消息驱动架构+订单状态机,二次开发,手写分布式事务框架。

470 学习 · 205 问题

查看课程