【问题标题】:JMS Specification: QueueRequestor and TopicRequestor are not interfacesJMS 规范:QueueRequestor 和 TopicRequestor 不是接口
【发布时间】:2013-10-08 21:31:57
【问题描述】:

谁能解释为什么在 JMS 规范(1.1 和 2.0)中 javax.jms.QueueRequestorjavax.jms.TopicRequestor 是类而不是接口?

JMS 规范中的几乎所有类型(连接、会话、目的地、消息等)都是接口,这对我来说很有意义,因为规范只定义了一个通用接口并让 JMS 提供者实现实例化。 只有异常是类(这对我来说也很有意义)来简化实现。

只有 javax.jms.QueueRequestorjavax.jms.TopicRequestor 不遵循此约定。这使得在单元测试中模拟它变得更加复杂。

有人知道原因吗?

【问题讨论】:

    标签: junit jms easymock


    【解决方案1】:

    好的,我想我现在已经知道答案了: 这两个类只是一个简单的默认实现,用于涵盖使用其他必需接口(TopicRequestor,例如使用 TopicSession、Topic 和 TemporaryTopic)的基本请求/回复场景,而无需了解它们的具体实现。

    所以它们只是简化请求/回复场景(针对 JMS 客户端)实现的缩写。因此,JMS 提供者没有必要实现他们自己的这些模式版本。

    很抱歉过早发布这个问题。

    【讨论】:

      猜你喜欢
      • 2023-03-24
      • 2016-09-01
      • 1970-01-01
      • 2011-01-08
      • 1970-01-01
      • 2014-11-11
      • 1970-01-01
      • 1970-01-01
      • 2014-02-24
      相关资源
      最近更新 更多