RabbitMQ系列十四 SpringAMQP介绍

Spring AMQP

The project consists of two parts; spring-amqp is the base abstraction, and spring-rabbit is the RabbitMQ implementation.
官方网站
http://projects.spring.io/spring-amqp/

官方文档
http://docs.spring.io/spring-amqp/docs/1.7.3.RELEASE/reference/html/

源码
https://github.com/spring-projects/spring-amqp

spring-amqp 模块是对AMQP协议的一个抽象和封装
spring-rabbit 模块是建立在spring、spring-amqp、amqp-client(RabbitMQ java client)之上的,是具体操作RabbitMQ的,底层对RabbitMQ的操作是使用amqp-client,其核心API RabbitAdmin、 RabbitTemplate

使用
1pom.xml

    4.0.0

    com.edu.mq
    spring-amqp-rabbitmq
    0.0.1-SNAPSHOT
    jar

    spring-amqp-rabbitmq
    http://maven.apache.org

    
        UTF-8
        1.8
        1.8
    

    
        
            org.springframework.amqp
            spring-rabbit
            1.7.3.RELEASE
        
    
    


引入依赖之后,可以看到spring-rabbit内部依赖

1, rabbit-amqp.
2, spring-amqp.
3, spring基础模块。

RabbitMQ系列十四 SpringAMQP介绍_第1张图片
依赖后jar
SpringAMQP是对AMQP协议的高度封装详解。

1,springAMQP将amqp协议中的概念各个模块及属性抽象成了类(rabbitclient中基本都是直接用字符串表示)。
如下是抽象之后源码的截图介绍,还有其他的细节部分,可以下载源码,自行研究。


RabbitMQ系列十四 SpringAMQP介绍_第2张图片
image.png

通过这样上述的抽象,spring-amqp的操作将会更加简单。

spring-rabbit详细介绍

spring-rabbit 模块是建立在spring、spring-amqp、amqp-client(RabbitMQ java client)之上的,是具体操作RabbitMQ的,底层对RabbitMQ的操作是使用amqp-client,其核心API RabbitAdmin、 RabbitTemplate。

spring-rabbit是具体完成和broker交互的。通过下面两个具体的类,可以完成对broker的所有操作。即spring-rabbit通过操作rabbit-client完成对broker的操作。

RabbitMQ系列十四 SpringAMQP介绍_第3张图片
两个重要api
RabbitMQ系列十四 SpringAMQP介绍_第4张图片
rabbitAdmin介绍

rabbitAdmin对broker的操作,都是通过rabbitTemplet操作的。如下


RabbitMQ系列十四 SpringAMQP介绍_第5张图片
rabbitTemplate
RabbitMQ系列十四 SpringAMQP介绍_第6张图片
具体操作

你可能感兴趣的:(RabbitMQ系列十四 SpringAMQP介绍)