0

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

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

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

有谁知道这样做的原因?

4

1 回答 1

0

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

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

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

于 2013-10-02T14:27:24.860 回答