对于最新稳定版本,请使用Spring Framework 7.0.1spring-doc.cadn.net.cn

JMS(Java 消息服务)

Spring 提供了一个 JMS 集成框架,大大简化了 JMS API 的使用 就像 Spring 对 JDBC API 的集成一样。spring-doc.cadn.net.cn

JMS 大致可分为两个功能领域,即生产和 信息消费。这Jms模板类用于消息生成, 同步消息接收。用于类似雅加达EE的异步接收 Spring 采用消息驱动的 Bean 风格,提供了多种消息监听器容器, 你可以用它来创建消息驱动POJO(MDP)。春季也提供了一种声明性的方式 以创建信息听众。spring-doc.cadn.net.cn

org.springframework.jms.corepackage 提供了用于使用的核心功能 JMS。它包含了 JMS 模板类,通过处理 资源的创造与释放,类似于Jdbc模板这也适用于JDBC。这 Spring模板类共有的设计原则是提供辅助方法, 执行常见作,并且在更复杂的使用中,委托 处理任务到用户实现的回调接口。JMS模板遵循 设计一样。这些类提供了各种便捷的发送消息的方法, 同步消耗消息,并将 JMS 会话和消息生产器暴露于 用户。spring-doc.cadn.net.cn

org.springframework.jms.support套餐内容JMSException译本 功能性。翻译会将被检查的JMSException层级到 无检查例外的镜像层级结构。如果有专门的提供者子类 被检查的jakarta.jms.JMSException存在,这个例外被包裹在 猖獗UncategorizedJmsException.spring-doc.cadn.net.cn

org.springframework.jms.support.converter软件包提供消息转换器抽象化以在 Java 对象和 JMS 消息之间转换。spring-doc.cadn.net.cn

org.springframework.jms.support.destination包提供多种策略 用于管理 JMS 目的地,例如为目的地提供服务定位器 存储在JNDI中。spring-doc.cadn.net.cn

org.springframework.jms.annotation套件提供了必要的基础设施 支持注释驱动的监听器端点,方法是使用@JmsListener.spring-doc.cadn.net.cn

org.springframework.jms.config包提供了JMS以及用于配置监听器容器的 Java 配置支持, 创建监听端点。spring-doc.cadn.net.cn

最后,是org.springframework.jms.connectionpackage 提供了以下实现 这连接工厂适合独立应用。它还包含 Spring的实现PlatformTransactionManager对于JMS(巧妙命名的JmsTransactionManager).这使得JMS作为事务型无缝集成成为可能 资源进入 Spring 的交易管理机制。spring-doc.cadn.net.cn

截至 Spring Framework 5,Spring 的 JMS 包完全支持 JMS 2.0,并要求 JMS 2.0 API 将在运行时出现。我们建议使用兼容JMS 2.0的提供商。spring-doc.cadn.net.cn

如果你系统里用的是较旧的消息代理,可以尝试升级到 适用于现有经纪人世代的JMS 2.0兼容驱动。或者,你也可以这样做 尝试运行基于 JMS 1.1 的驱动程序,只需将 JMS 2.0 API jar 放在 classpath,但只在驱动上使用JMS 1.1兼容的API。Spring的JMS支持 默认遵循JMS 1.1的惯例,因此在相应配置下也能做到 支持这样的情景。不过,请仅考虑这在过渡阶段。spring-doc.cadn.net.cn