AICon 上海站|90%日程已就绪,解锁Al未来! 了解详情
写点什么

Spring AMQP 1.0 GA 发布了

  • 2012-02-05
  • 本文字数:1491 字

    阅读完需:约 5 分钟

近日,SpringSource(VMware 下的一个部门)发布 Spring AMQP 1.0 GA(1.0.0.RELEASE)。Spring AMQP 项目将 Spring 核心概念应用到了基于 AMQP 的消息解决方案的开发上,并且提供了 Java 与.NET 两个版本。要想了解 Spring AMQP 与 AMQP,请阅读文章“ Introduction to SpringSource’s Advanced Message Queuing Protocol Support ”。

Spring AMQP 提供了 org.springframework.amqp.core.AmqpTemplate 来发送与接收消息。AMQP 模板实现支持发送与接收 POJOs 而非 javax.jms.Message 实例。他们还提供了一种方式来自定义用于编排对象的 MessageConverter。Spring 与 JMS 用户会发现 JmsTemplate 与新的 AmqpTemplate 之间的相似性。

下面的代码片段介绍了如何联合使用 Spring AMQP 与 RabbitMQ 处理同步消息。 RabbitMQ 是 VMware 的产品,并且是官方 Spring AMQP 示例中所用的默认 AMQP 实现。

复制代码
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:rabbit="http://www.springframework.org/schema/rabbit"
xsi:schemaLocation="http://www.springframework.org/schema/rabbit
http://www.springframework.org/schema/rabbit/spring-rabbit-1.0.xsd
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
<rabbit:connection-factory id="connectionFactory"/>
<rabbit:template id="amqpTemplate" connection-factory="connectionFactory"/>
<rabbit:admin connection-factory="connectionFactory"/>
<rabbit:queue name="helloworld.queue"/>
</beans>

上述 Spring 配置 xml 引用了 ConnectionFactory,创建了一个 RabbitTemplate 来访问消息 broker,创建了一个 RabbitAdmin 来管理交换、查询与绑定,最后创建了队列。下面的 Java 代码片段用于发送与接收消息。

复制代码
Producer.java
import org.springframework.amqp.core.AmqpTemplate;
...
AmqpTemplate amqpTemplate = context.getBean(AmqpTemplate.class);
amqpTemplate.convertAndSend("helloworld.queue", "Hello World");
复制代码
Consumer.java
import org.springframework.amqp.core.AmqpTemplate;
...
AmqpTemplate amqpTemplate = context.getBean(AmqpTemplate.class);
System.out.println(amqpTemplate.receiveAndConvert("helloworld.queue"));

要想上手,请下载 Spring AMQP for Java 或是 Spring AMQP for .NET 。Spring AMQP for Java artifacts 也位于 SpringSource Maven 仓库与 Maven Central 中。其依赖是 spring-amqp、spring-core 与 spring-context。如果消息 broker 使用的是 RabbitMQ,那么还要引入 spring-rabbit。你还可以试一下位于 GitHub 上的 Spring AMQP 示例。这些示例都是基于 Maven 的项目,需要用到 RabbitMQ 与 Erlang 。请阅读与示例代码一同发布的 readme.md 文件以了解完整的构建命令。

对于 Cloud Foundry 用户来说,VMware 还发布了RabbitMQ on Cloud Foundry 免费的公开Beta 版。你可以使用AMQP 连接RabbitMQ on Cloud Foundry,通过这些示例可以帮助你快速上手。对于Spring Integration 用户来说,版本2.1 M1 提供了AMQP 支持。

除了VMware 的RabbitMQ 外,其他基于AMQP 面向消息的中间件还有 Apache Qpid Red Hat Enterprise MRG StormMQ (托管)。iMatrix 的 OpenAMQ 已经不再支持了,因此也没有成为一个选择。

要想了解关于 Spring AMQP 的更多信息,请查看 Spring AMQP Reference for Java Spring AMQP Reference for .NET 参考页面。

查看英文原文: Spring AMQP 1.0 GA

2012-02-05 23:433994
用户头像

发布了 88 篇内容, 共 266.8 次阅读, 收获喜欢 8 次。

关注

评论

发布
暂无评论
发现更多内容

万界星空科技低代码平台+协同制造MES产品

万界星空科技

低代码开发平台 低代码平台 mes 云mes 万界星空科技

实例讲解数据库的数据去重

华为云开发者联盟

数据库 后端 华为云 华为云GaussDB 华为云开发者联盟

从零开始构建性能测试技术体系

老张

性能测试 技术体系

关于LED广告屏的市场情况

Dylan

互联网 媒体 广告 应用 LED显示屏

跨链代币开发:解锁区块链空间的互操作性

区块链软件开发推广运营

交易所开发 dapp开发 区块链开发 链游开发 NFT开发

大文件传输小知识 | UDP和TCP哪个传输速度快?

镭速

TCP 传输大文件 UDP传输

包装印刷行业云MES解决方案

万界星空科技

MES系统 mes 云mes 印刷行业 万界星空科技

应用架构的演进 | 拒绝牺牲性能为代价的安全

亚马逊云科技 (Amazon Web Services)

微服务 云原生 API Amazon API Gateway Amazon AppSync

大语言模型比武

天黑黑

AI 亚马逊云科技 ChatGPT LLM

mac电脑串口调试工具serial 最新激活直装版

胖墩儿不胖y

Mac软件 串口调试工具 好用的电脑软件

WorkPlus:企业数字化底座,统一数字化办公入口

BeeWorks

醉三皇酒业与玛特宇宙达成战略合作,发布醉三皇数字代言人【玉皇璟玺】

联营汇聚

光纤的连接方法有哪些?

小魏写代码

数据库管理工具:Navicat Premium 15 中文激活版 支持M1

彩云

Navicat Premium 15 数据库库管理

如何配置支付宝密钥之如何配置普通 RSA2 密钥|保姆级教学(一)

盐焗代码虾

php 支付宝 密钥 教程分享

《可信计算技术最佳实践白皮书》发布,龙蜥助力可信计算技术应用推广(可下载)

OpenAnolis小助手

最佳实践 白皮书 云栖大会 龙蜥社区 可信计算

软件测试/测试开发丨PyCharm安装指南与技巧分享

测试人

软件测试

企业沟通为什么选择用私有化部署的im即时通讯软件?

BeeWorks

iOS实现代码混淆

Spring AMQP 1.0 GA发布了_Java_Bienvenido David_InfoQ精选文章