该版本仍在开发中,尚未被视为稳定。请使用最新的稳定版本,使用 Spring AMQP 4.0.0!spring-doc.cadn.net.cn

1.5版本自1.4以来的变化

Spring-二郎已不再支持

Spring-二郎JAR不再包含在发行中。 改用RabbitMQ REST APIspring-doc.cadn.net.cn

缓存连接工厂变化

空地址 在缓存连接工厂

之前,如果连接工厂配置了主机和端口,但也提供了空字符串地址主机和端口被忽略。 现在,空荡荡的地址字符串被视为与,并且使用主机和端口。spring-doc.cadn.net.cn

URI 构造器

缓存连接工厂有一个额外的构造子,其中URI参数,用于配置代理连接。spring-doc.cadn.net.cn

连接重置

一种新的方法resetConnection()新增功能是为了允许用户重置连接(或连接)。 例如,你可以用这个方法在切换到次要经纪人后重新连接主经纪人。 这确实影响了流程中的运营。 现存的摧毁()方法做的事情完全相同,但新方法的名字更不那么令人生畏。spring-doc.cadn.net.cn

控制容器队列声明行为的属性

当监听器容器消费者开始时,他们会尝试被动声明队列,以确保队列可用 在经纪人身上。 之前,如果这些声明失败(例如,因为队列不存在)或HA队列正在运行时, 移动后,重试逻辑被固定为每隔五秒的三次重试。 如果队列仍然不存在,行为由缺失队列致命性质(默认:true). 此外,对于配置为监听多个队列的容器,如果只有部分队列可用,消费者 我以固定的60秒间隔重新尝试丢失的队列。spring-doc.cadn.net.cn

声明重试,failedDeclarationRetryIntervalretryDeclarationInterval属性现在可以配置了。 更多信息请参见消息监听器容器配置spring-doc.cadn.net.cn

级别包变更

RabbitGatewaySupport课程已从......o.s.amqp.rabbit.core.supportO.S.AMQP.RABBIT.CORE.spring-doc.cadn.net.cn

默认消息属性转换器变化

你现在可以配置默认消息属性转换器自 确定 的最大长度长绳该 被转换为 转给字符串而不是DataInputStream. 转换器有一个替代构造器,取该值作为极限。 此前,该限制被硬编码为1024字节。 (也可在1.4.4版本中提供)spring-doc.cadn.net.cn

@RabbitListener改进

@QueueBinding@RabbitListener

绑定属性已被添加到@RabbitListener注释与队列属性以允许队列交换捆绑对于由 a 宣告兔子管理员上 经纪人。spring-doc.cadn.net.cn

SpEL 在@SendTo

默认回复地址(@SendTo@RabbitListener现在可以是一个 SpEL 表达式。spring-doc.cadn.net.cn

通过属性实现多队列名称

你现在可以使用 SpEL 和属性占位符的组合,为一个监听器指定多个队列。spring-doc.cadn.net.cn

自动交换、队列和绑定声明

你现在可以声明 Beans 定义一组这些实体,并且兔子管理员补充道 内容被归入连接建立时声明的实体列表。 更多信息请参见“声明交换、队列和绑定的集合”。spring-doc.cadn.net.cn

兔子模板变化

回复地址添加

回复地址属性已被添加到<兔子模板>作为替代方案的组件回复队列. 更多信息请参见请求/回复消息。 (1.4.4版本中也可作为兔子模板).spring-doc.cadn.net.cn

阻塞收到方法

兔子模板现在支持阻挡收到转换与接收方法。 更多信息请参见民调消费者spring-doc.cadn.net.cn

强制性发送与接收方法

命令的当使用发送与接收转发与接收methods,调用线程 抛出AmqpMessageReturnedException如果请求消息无法送达。 更多信息请参见回复超时spring-doc.cadn.net.cn

不恰当的回复监听器配置

该框架尝试在使用命名回复队列时验证回复监听器容器的正确配置。spring-doc.cadn.net.cn

RabbitManagement模板添加

RabbitManagement模板该功能被引入用于监控和配置RabbitMQ代理,使用其管理插件提供的REST API。 更多信息请参见RabbitMQ REST APIspring-doc.cadn.net.cn

监听器容器豆名(XML)

身份证属性<listener-container/>元素已被移除。 从这次发布开始,身份证<听众/>子元素单独用于为每个监听元素创建的监听器容器命名。spring-doc.cadn.net.cn

采用正常的春豆名称覆盖。 如果以后<听众/>与 相同的解析结果身份证作为现有的豆子,新的定义会覆盖现有的。 此前,Beans名称由身份证属性<listener-container/><听众/>元素。spring-doc.cadn.net.cn

迁移到这个版本时,如果你已经迁移了身份证属性<listener-container/>元素,移除它们并设置身份证关于孩子<听众/>而是元素。spring-doc.cadn.net.cn

然而,为了支持作为一个群体开始和停止容器,新的属性已被添加。 当定义该属性时,由该元素创建的容器会被添加到该类型为该类型的豆中Collection<SimpleMessageListenerContainer>. 你可以迭代这个组来启动和停止容器。spring-doc.cadn.net.cn

班级@RabbitListener

@RabbitListener注释现在可以在类级层面应用。 与新@RabbitHandler方法注释,这允许你根据有效载荷类型选择处理程序方法。 更多信息请参见多方法监听器spring-doc.cadn.net.cn

SimpleMessageListenerContainer:BackOff 支持

SimpleMessageListenerContainer现在可以配备退避实例消费者启动恢复。 更多信息请参见消息监听器容器配置spring-doc.cadn.net.cn

通道闭测

引入了控制通道闭合对数水平的机制。 参见“记录通道关闭事件”。spring-doc.cadn.net.cn

应用事件

SimpleMessageListenerContainer现在,当消费者失败时,会发出应用事件。 更多信息请参见消费者活动spring-doc.cadn.net.cn

消费者标签配置

此前,异步消费者的消费者标签由经纪人生成。 通过这次发布,现在可以为听众容器提供命名策略。 参见消费者标签spring-doc.cadn.net.cn

MessageListener适配器

MessageListener适配器现在支持将队列名称(或消费者标签)映射到方法名称,以确定 根据接收消息的队列,决定调用哪个委派方法。spring-doc.cadn.net.cn

本地化队列连接工厂添加

本地化队列连接工厂是一个新的连接工厂,连接到集群中的节点,而该节点实际上存在一个镜像队列。spring-doc.cadn.net.cn

匿名队列命名

从1.5.3版本开始,你现在可以控制匿名队列名字会被生成。 看匿名队列更多信息请见。spring-doc.cadn.net.cn