至于环境的搭载看这篇博客
本文的操作如下,在springboot的启动类上加上@EnableRabbit
然后在service的方法上书写@RabbitListener注解,通过属性queues来指定需要监听的队列,当springboot启动类启动时,只要队列中有消息,该注解标注的方法就会自动的将消息打印在控制台:
@Service
public class BookService {
@RabbitListener(queues = "lzl.news")
public void receive(Book book){
System.out.println("收到消息:"+book);
}
@RabbitListener(queues = "lzl")
public void receive2(Message message){
System.out.println(message.getBody());
System.out.println(message.getMessageProperties());
}
}
验证:
运行springboot启动类,在通过测试类给队列发布消息:
@Test
public void sendMsg(){
rabbitTemplate.convertAndSend("exchange.fanout","",new Book("卢泽龙传奇","卢泽龙"));
}
只要一运行这个测试方法,控制台就会打印:
控制台输出了两行,第一行的message是receive2的方法,第二行是receive方法的结果。