RabbitMQ系列4 Spring整合RabbitMQ

Spring整合RabbitMQ

创建两个工程

在这里插入图片描述

添加依赖

消费者和生产者的依赖都一样

 
    
    
        org.springframework.amqp
        spring-rabbit
        2.1.8.RELEASE
    
    
    
        junit
        junit
        4.13
    
    
    
        org.springframework
        spring-test
        5.0.5.RELEASE
    

    
        
            
                org.apache.maven.plugins
                maven-compiler-plugin
                3.8.0
                
                    1.8
                    1.8
                
            
        
    

配置整合

1.rabbitMQ连接参数配置文件

rabbitmq.properties

rabbitmq.host=192.168.12.135
rabbitmq.port=5672
rabbitmq.username=heima
rabbitmq.password=heima
rabbitmq.virtual-host=/itcast

2.Spring整合rabbitMQ配置文件

生产者端

spring-rabbitmq.xml配置文件



    
    
    
    
    
    

    
     
    

    
    
    

    
    

    
    
        
            
            
        
    

    
    
    
    
    
    
    

    
        
            
            
            
        
    

    
    

消费者端



    
    
    
    

    
    

    
        
        
    

消费者端编写MessageListener接口的实现类

package com.itheima.rabbitmq.listener;

import org.springframework.amqp.core.Message;
import org.springframework.amqp.core.MessageListener;

public class SpringQueueListener implements MessageListener {
    @Override
    public void onMessage(Message message) {
        System.out.println(new String(message.getBody()));
    }
}

生产者者端发送消息

使用Autowired自动注入rabbitTemplate,然后使用convertAndSend方法发送消息

  @Autowired
    private RabbitTemplate rabbitTemplate;

    @Test
    public void test1(){
        rabbitTemplate.convertAndSend("spring_queue","Hello word!!");
    }

3.配置项讲解

id:bean的名称
name:queue的名称
auto-declare:自动创建
auto-delete:自动删除。 最后一个消费者和该队列断开连接后,自动删除队列
exclusive:是否独占
durable:是否持久化

示例
**



id:bean的名称
connection-factory:工厂bea的名称

示例


    

id:bean的名称
name:交换机的名称
auto-declare:自动删除。 最后一个队列和该交换机断开连接后,自动删除交换机

交换机绑定队列

    
        
        
    

示例
**


    
        
            
            
        
    

你可能感兴趣的:(RabbitMQ系列4 Spring整合RabbitMQ)