@RabbitListener和@RabbitHandler的使用

  1. @RabbitListener 注解是指定某方法作为消息消费的方法,例如监听某 Queue 里面的消息。
  2. @RabbitListener标注在方法上,直接监听指定的队列,此时接收的参数需要与发送市类型一致
@Component
public class PointConsumer {
	//监听的队列名
    @RabbitListener(queues = "point.to.point")
    public void processOne(String name) {
        System.out.println("point.to.point:" + name);
    }
 
}
  1. @RabbitListener 可以标注在类上面,需配合 @RabbitHandler 注解一起使用
    @RabbitListener 标注在类上面表示当有收到消息的时候,就交给 @RabbitHandler 的方法处理,根据接受的参数类型进入具体的方法中。
@Component
@RabbitListener(queues = "consumer_queue")
public class Receiver {
 
    @RabbitHandler
    public void processMessage1(String message) {
        System.out.println(message);
    }
 
    @RabbitHandler
    public void processMessage2(byte[] message) {
        System.out.println(new String(message));
    }
    
}

你可能感兴趣的:(消息中间件,rabbitmq)