对于最新的稳定版本,请使用 Spring Framework 6.2.0! |
JMS(Java 消息服务)
Spring 提供了一个 JMS 集成框架,该框架在很大程度上简化了 JMS API 的使用。 与 Spring 对 JDBC API 的集成方式相同。
JMS 大致可以分为两个功能领域,即生产和
消息的消费。该类用于消息生成,
同步消息接收。对于类似于 Jakarta EE 的异步接收
消息驱动的 bean 样式,Spring 提供了许多消息侦听器容器,这些容器
可用于创建消息驱动的 POJO (MDP)。Spring 还提供了一种声明性方式
创建消息侦听器。JmsTemplate
该软件包提供了使用
JMS 的。它包含 JMS 模板类,这些类通过处理
创建和释放资源,与 JDBC 非常相似。这
Spring 模板类的共同设计原则是提供辅助方法,以
执行常见操作,对于更复杂的用法,委托
处理任务分配给用户实现的回调接口。JMS 模板遵循
相同的设计。这些类提供了各种方便的方法来发送消息,
同步使用消息,并将 JMS 会话和消息生成者公开给
用户。org.springframework.jms.core
JdbcTemplate
该软件包提供翻译
功能性。转换会将选中的层次结构转换为
未检查异常的镜像层次结构。如果任何特定于提供程序的子类
中,此异常包装在
猖獗。org.springframework.jms.support
JMSException
JMSException
jakarta.jms.JMSException
UncategorizedJmsException
该软件包提供了一个抽象,用于在 Java 对象和 JMS 消息之间进行转换。org.springframework.jms.support.converter
MessageConverter
该软件包提供了各种策略
用于管理 JMS 目标,例如为目标提供服务定位器
存储在 JNDI 中。org.springframework.jms.support.destination
该软件包提供了必要的基础设施
通过使用 .org.springframework.jms.annotation
@JmsListener
该软件包为命名空间提供了解析器实现,以及用于配置侦听器容器和
创建侦听器终端节点。org.springframework.jms.config
jms
最后,该软件包提供了
适合在独立应用程序中使用。它还包含一个
Spring 的 JMS 实现(巧妙地命名为 )。这允许将 JMS 无缝集成为事务
资源导入到 Spring 的事务管理机制中。org.springframework.jms.connection
ConnectionFactory
PlatformTransactionManager
JmsTransactionManager
从 Spring Framework 5 开始,Spring 的 JMS 包完全支持 JMS 2.0,并且需要 JMS 2.0 API 的运行。我们建议使用与 JMS 2.0 兼容的提供程序。 如果您碰巧在系统中使用了较旧的消息代理,则可以尝试升级到 适用于现有代理代的 JMS 2.0 兼容驱动程序。或者,您也可以 尝试针对基于 JMS 1.1 的驱动程序运行,只需将 JMS 2.0 API jar 放在 classpath 的 API 中,但仅使用与 JMS 1.1 兼容的 API 来对付您的驱动程序。Spring 的 JMS 支持 默认情况下遵循 JMS 1.1 约定,因此使用相应的配置时,它确实 支持这样的场景。但是,请仅针对过渡方案考虑这一点。 |