我的问题是关于以下两个工厂的使用:
- 连接工厂
- 队列连接工厂
目前我只使用ConnectionFactory
来初始化所有内容:
Connection conn = factory.createConnection(user, pw);
Session session = conn.createSession()
Destination dest = session.createQueue('xyz')
...
如果我理解正确,QueueConnectionFactory
的工作方式几乎相同。 是完全一样的东西吗?
我特别想知道,因为我正在使用包含这两个对象的 JNDI 上下文。所以,我不确定我应该更喜欢使用哪一个。
最佳答案
javax.jms 包 API 说:
由于历史原因,JMS 提供了四组用于发送和接收消息的可选接口(interface):
•JMS 1.0 定义了两种特定于域的 API,一种用于点对点消息传递(队列),一种用于发布/订阅(主题)。尽管出于向后兼容性的原因,它们仍然是 JMS 的一部分,但它们应该被视为已被后来的 API 完全取代。
•JMS 1.1 引入了一个新的统一 API,它提供了一组可用于点对点和发布/订阅消息传递的接口(interface)。这在此处称为经典 API。
•JMS 2.0 引入了一个简化的 API,它提供了经典 API 的所有功能,但需要的接口(interface)更少,使用起来也更简单。
每个 API 都提供一组不同的接口(interface),用于连接到 JMS 提供程序以及发送和接收消息。然而,它们都共享一组通用接口(interface)来表示消息和消息目的地,并提供各种实用功能。
换句话说,QueueConnectionFactory 只是一个遗留接口(interface)
关于java - JMS QueueConnectionFactory 与 ConnectionFactory,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30121654/