- Spring AMQP项目介绍
Spring AMQP项目将Spring的核心思想应用于基于AMQP的消息解决方案的开发上。它提供了“template”这个高度抽象来发送和接收信息。它同样提供了消息驱动的实体,这些实体存在于“listener container”容器中。这些库不但使得AMQP资源的管理变得容易,与此同时促进了依赖注入和声明式配置的使用。在所有的情况下,你将看到许多Spring框架提供的类似于JMS的便利。
这个项目包含两部分:
1、spring-amqp的基础抽象;
2、spring-rabbit这个RabbitMQ的实现
特点:
1、异步处理没有绑定消息的监听容器;
2、RabbitTemplate发送和接收消息;
3、RabbitAdmin自动声明队列,交换和绑定。
- Spring AMQP快速入门
推荐开始在你的项目中使用spring-amqp的快捷方式是使用依赖管理系统,例如Maven和Gradle,配置片段如下:
<dependencies>
<dependency>
<groupId>org.springframework.amqp</groupId>
<artifactId>spring-rabbit</artifactId>
<version>1.4.0.RELEASE</version>
</dependency>
</dependencies>
使用Java编码的方式:
publicstaticvoid main(finalString... args)throwsException{
ConnectionFactory cf =newCachingConnectionFactory();
// set up the queue, exchange, binding on the broker
RabbitAdmin admin =newRabbitAdmin(cf);
Queue queue =newQueue("myQueue");
admin.declareQueue(queue);
TopicExchange exchange =newTopicExchange("myExchange");
admin.declareExchange(exchange);
admin.declareBinding(
BindingBuilder.bind(queue).to(exchange).with("foo.*"));
// set up the listener and container
SimpleMessageListenerContainer container =
newSimpleMessageListenerContainer(cf);
Object listener =newObject(){
publicvoid handleMessage(String foo){
System.out.println(foo);
}
};
MessageListenerAdapter adapter =newMessageListenerAdapter(listener);
container.setMessageListener(adapter);
container.setQueueNames("myQueue");
container.start();
// send something
RabbitTemplate template =newRabbitTemplate(cf);
template.convertAndSend("myExchange","foo.bar","Hello, world!");
Thread.sleep(1000);
container.stop();
}
使用Spring的方式:
publicstaticvoid main(finalString... args)throwsException{
AbstractApplicationContext ctx =
newClassPathXmlApplicationContext("context.xml");
RabbitTemplate template = ctx.getBean(RabbitTemplate.class);
template.convertAndSend("Hello, world!");
Thread.sleep(1000);
ctx.destroy();
}
publicclassFoo{
publicvoid listen(String foo){
System.out.println(foo);
}
}
<!--context.xml -->
<rabbit:connection-factoryid="connectionFactory"/>
<rabbit:templateid="amqpTemplate"connection-factory="connectionFactory"
exchange="myExchange"routing-key="foo.bar"/>
<rabbit:adminconnection-factory="connectionFactory"/>
<rabbit:queuename="myQueue"/>
<rabbit:topic-exchangename="myExchange">
<rabbit:bindings>
<rabbit:bindingqueue="myQueue"pattern="foo.*"/>
</rabbit:bindings>
</rabbit:topic-exchange>
<rabbit:listener-containerconnection-factory="connectionFactory">
<rabbit:listenerref="foo"method="listen"queue-names="myQueue"/>
</rabbit:listener-container>
<beanid="foo"class="foo.Foo"/>
相关推荐
##### 2.1 快速入门 - **XML 配置**:Spring AMQP 支持通过 XML 文件来配置消息队列的相关组件,这使得开发者能够轻松地定义交换机、队列、绑定等元素。 - **Java 配置**:除了 XML 配置外,Spring AMQP 还支持 ...
- 快速入门部分,介绍了如何使用XML和Java配置快速实现AMQP消息的基本发送和接收。 - 新特性介绍,概述了版本2.1相较于2.0所引入的新特性,例如AMQP客户端库更新、包更改、发布者确认变化、监听器容器工厂改进、...
接下来,我们关注`spring-amqp-samples`,这是一个快速入门和示例项目,它展示了如何在实际应用中使用Spring AMQP。在源码中,你可以找到如何配置RabbitTemplate、定义消息监听器、创建和使用MessageConverter的实例...
以上是对Spring AMQP 2参考手册的内容分析,主要介绍了项目的核心概念、使用方法、快速入门、依赖管理、消息发送与接收、XML配置以及版权声明等关键知识点。这些知识点对于理解和使用Spring AMQP框架是十分重要的。
这个入门教程将帮助你理解Spring AMQP的基本概念、配置以及核心组件。 首先,让我们了解AMQP。AMQP是一种开放标准的消息协议,它定义了消息生产者、消费者和消息队列之间的交互方式。RabbitMQ是基于AMQP的开源消息...
这个教程“gettingstarted-springamqp”旨在帮助初学者快速了解如何在 Spring 应用程序中集成和使用 AMQP。 在开始之前,我们需要理解 AMQP 是一种标准的消息中间件协议,它允许应用程序之间通过消息传递进行异步...
- **分发 ZIP 文件**:Spring 提供 ZIP 分发包,便于没有构建工具的环境快速搭建开发环境。 - **日志**:Spring 支持多种日志框架,包括 Commons Logging、SLF4J 和 Log4J。 #### 二、Spring Framework 4.x 新功能...
文档概览部分对 Spring Boot 的文档进行了概括性介绍,包括 Spring Boot 的概述、快速入门、配置、自动配置、 starters 等。 4. 第一步骤 第一步骤部分指导用户如何快速开始使用 Spring Boot,包括项目结构、依赖...
你会使用Spring AMQP的RabbitTemplate内置应用系统来发布消息和使用一个MessageListenerAdapter POJO来订阅消息 git克隆 gradle bootRun 需要 大约几十分钟 一款文本编辑器或者IDE 你也可以从这个项目中入门代码...
在入门指南部分,文档可能提供了如何开始使用Spring Framework的基础知识,包括一些基础概念和必要的配置,帮助新手快速上手。 接着,在介绍Spring框架的章节中,文档可能介绍了Spring的整体架构,包括它的各种模块...
- **改进的入门体验**:简化了设置过程,使得开发者能够更快地开始使用Spring。 - **移除不推荐的包和方法**:为了保持API的整洁和现代化,Spring 4.0移除了大量过时或不再建议使用的API。 - **Java 8 (以及6和7)**...
- **快速入门**: 提供了简单的示例和步骤,帮助开发者快速上手使用Spring Cloud Bus。 - **Bus端点**: 包括刷新端点(Bus Refresh Endpoint)和环境端点(Bus Env Endpoint)等,用于远程刷新配置和服务间的信息传递。 ...
- **改进的入门体验**:Spring 4.0引入了一系列改进措施,使得开发者能够更快地开始使用Spring框架。 - **移除废弃的包和方法**:为了保持框架的简洁性,Spring 4.0移除了大量已经过时或不再推荐使用的API。 - **...
- **改善的入门体验:** 介绍了 Spring 4.0 在简化入门过程方面所做的改进。 - **移除过时的包和方法:** 为了保持框架的简洁性和高效性,Spring 4.0 移除了不再支持的包和方法。 - **Java 8 及其兼容性:** Spring ...
1. **入门指南**:这部分会介绍如何搭建Spring环境,如何创建第一个Spring项目,并简述Spring的核心理念。它可能还会涵盖Spring Boot的快速启动方式,以及如何利用Maven或Gradle构建工具整合Spring。 2. **核心容器...
《Spring从入门到精通》是一本全面覆盖Spring框架核心概念和技术的指南,旨在帮助读者从零基础开始,逐步掌握Spring的使用和应用开发。Spring作为Java企业级应用开发的主流框架,其强大的功能和灵活性使其在众多框架...
### Spring Framework 5.0.0.M1...以上内容涵盖了 Spring Framework 5.0.0.M1 的基础教程概览,从入门到核心概念和技术都有详细介绍。这不仅有助于新手快速上手,也为有经验的开发者提供了深入理解 Spring 框架的机会。
9. **Spring AMQP**和**Spring Cloud Stream**:分别用于处理基于AMQP协议的消息队列和微服务间的流处理。 在学习和使用这个"spring开发完整最新版jar包"时,开发者应首先了解Spring的基本概念,如IoC和AOP,然后...
弹簧示例Spring 示例:这些示例背后的想法是提供有关如何设置不同替代方案以使用 Spring 框架及其不同模块的快速入门指南。 将有(正在进行的)几个级别,并将对其进行枚举。 项目必须是基于 Groovy 的,但有时可以...