The Spring AMQP project applies core Spring concepts to the development of AMQP-based messaging solutions. It provides a "template" as a high-level abstraction for sending and receiving messages. It also provides support for Message-driven POJOs with a "listener container". These libraries facilitate management of AMQP resources while promoting the use of dependency injection and declarative configuration. In all of these cases, you will see similarities to the JMS support in the Spring Framework.

The project consists of two parts; spring-amqp is the base abstraction, and spring-rabbit is the RabbitMQ implementation.

Features

  • Listener container for asynchronous processing of inbound messages

  • RabbitTemplate for sending and receiving messages

  • RabbitAdmin for automatically declaring queues, exchanges and bindings

Quick start

Bootstrap your application with Spring Initializr.

Documentation

Each Spring project has its own; it explains in great details how you can use project features and what you can achieve with them.
2.1.0 CURRENT GA Reference Doc. API Doc.
2.1.1 SNAPSHOT Reference Doc. API Doc.
2.0.9 SNAPSHOT Reference Doc. API Doc.
2.0.8 GA Reference Doc. API Doc.
1.7.12 SNAPSHOT Reference Doc. API Doc.
1.7.11 GA Reference Doc. API Doc.

A few examples to try out: