SpringBoot中如何去集成RabbitMq并使用
一、工程搭建
二、首先需要引入RabbitMq对应的staert启动器
<!-- 引入RabbitMq集成依赖 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-amqp</artifactId> </dependency>
三、在application.yml文件中对rabbitmq进行相关配置
1 # 配置服务器端口 2 server: 3 port: 9999 4 5 # 配置spring 6 spring: 7 # 配置spring应用名称(目前暂时没用,后面微服务需要用到) 8 application: 9 name: rabbitmq-springboot 10 11 # 配置rabbitmq 12 rabbitmq: 13 host: 192.168.7.11 14 port: 5672 15 fm-port: 5671 16 username: fm 17 password: 1 18 virtual-host: fm
四、提供消费者
消费者需要去监听某个队列,然后从队列中取出消息进行消费
1 @Component 2 @RabbitListener(queuesToDeclare = @Queue("myQueue")) 3 public class RabbitMqListener { 4 5 @RabbitHandler 6 public void receiveMsg(String message) { 7 System.out.println("message:" + message); 8 } 9 10 }
五、编写生产者发送消息
1 @SpringBootTest(classes = RabbitmqdemoApplication.class) 2 @RunWith(SpringRunner.class) 3 class RabbitmqdemoApplicationTests { 4 5 @Autowired 6 private RabbitTemplate rabbitTemplate; 7 8 @Test 9 void contextLoads() { 10 } 11 12 13 @Test 14 public void sendMsg() { 15 rabbitTemplate.convertAndSend("myQueue", "Hello Rabbit"); 16 } 17 }
这里要注意:我们生产者发送消息时,为了确保发送到消费者监听的那个队列中,生产者发送消息时指定的路由键必须跟消费者监听的队列名一致
六、测试