当前位置: 首页 > 工具软件 > Spring AMQP > 使用案例 >

SpringAMQP快速入门

闻人越
2023-12-01

1:首先在父工程中引入依赖(这里包括amqp的依赖和单元测试依赖)。

   <!--AMQP依赖,包含RabbitMQ-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-amqp</artifactId>
        </dependency>
        <!--单元测试-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
        </dependency>

2:发布者。

(1)配置基本mq信息(这里的host指的是我的虚拟机地址)。

spring:
  rabbitmq:
    host: 192.168.6.130
    port: 5672
    username: xiaoze
    password: 123321
    virtual-host: /

(2)编写单元测试用来发送消息

package cn.itcast.mq.spring;

import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;

/**
 * @author 小泽
 * @create 2022-04-21  10:27
 * 记得每天敲代码哦
 */
@RunWith(SpringRunner.class)
@SpringBootTest
public class SpringAmqpTest {

    @Autowired
    private RabbitTemplate rabbitTemplate;

    @Test
    public void testSendMessage2SimpleQueue(){
        String queueName = "simple.queue";
        String message = "hello,spring amqp";
        rabbitTemplate.convertAndSend(queueName, message);
    }

}

3:消费者。

(1)配置mq基本信息,和发布者的一样。

(2)编写监听器,用来监听发布者发布的通道信息。(这里@RabbitListener中可以同时监听多个管道,这里为了测试只监听了一个。名为(simple.queue))

package cn.itcast.mq.listener;

import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.stereotype.Component;

/**
 * @author 小泽
 * @create 2022-04-21  11:17
 * 记得每天敲代码哦
 */
@Component
public class SpringRabbitListener {

    @RabbitListener(queues = {"simple.queue"})
    public void listenSimpleQueue(String msg){
        System.out.println("消费者接收到simple.queue的消息:"+msg);
    }
}

 类似资料: