ampq消费者多类型消息的功能如何实现

在xdelayreceiver中,可以定义多个消息处理器,根据参数类型来区分,但是有一个前提,就是必须把注解写到类前面:

@RabbitListener(queues = XdelayConfig.IMMEDIATE_QUEUE_XDELAY) 
public class XdelayReceiver {

 

然后把@RabbitHandler写在每一个处理方法之前

@RabbitHandler
public void get(MessageVo messageVo) {

 

@RabbitHandler

public void get2(MessageVoSec messageVo) {

 

这样就可以正常通过消息类型来区分了,否则会出现不确定的异常。

你可能感兴趣的:(ampq消费者多类型消息的功能如何实现)