SpringAMQP使用步骤

SpringAMQP

AMQP  advanced message queuing protocal 高级消息队列协议

SpringAMQP 是基于AMQP协议定义的一套API,提供模板来发送和接受信息,包含两部分,spring-amqp是基础抽象,spring-rabbit是底层默认实现。

特征:

1.监听器容器,用于异步处理入站消息

2.用于发送和接收消息的RabbitTemplate

3.RabbitAdmin用于自动声明队列交换和绑定

利用SpringAMQP实现基础消息队列功能:

1.在父工程引入spring-amqp依赖

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

2.在publisher服务中利用RabbitTemplate发送消息到name.queue队列

   先在publisher中编写aoolication.yml

spring:
  rabbitmq:
    host: ip
    port: 5672
    username: it
    password: 123456
    virtual-host: /

 在publisher中新建一个测试类,编写测试方法

@RunWith(SpringRunner.class)
@SpringBootTest

public class SpringAmqpTest {
    @Autowired
    public RabbitTemplate rabbitTemplate;

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

3.在consumer服务中编写消费逻辑,绑定这个队列

 先在consumer中编写aoolication.yml,同上

@Component
public class SpringrRabbitListener {

    @RabbitListener(queues = "simple.queue")
    public void listenSimpleQueue(String msg){
        System.out.printf("接收到simple.queue:【"+msg+"】");

    }
}

 

posted @ 2021-11-10 13:39  zuiAI0658  阅读(590)  评论(0)    收藏  举报