在这一节中,我们将介绍 JMS 客户机编程的每一个重要 JMS 公用接口和它们的一些方法。一定要记住,尽管公用接口是独立于域的,但是客户机代码的行为与运行时处于操作状态的域的特定于域的行为是相匹配的。
在下一节
http://www6.software.ibm.com/developerworks/cn/education/java/j-jms/tutorial/j-jms-5-1.html(用公用接口进行客户机编程),我们将分析几个进行 JMS 消息处理的示例代码。
ConnectionFactory
ConnectionFactory 是一个可以从JNDI检索的受管理对象,它建立了到提供者的连接。它包含 createConnection() 方法,该方法返回了一个 Connection 对象。
Connection
Connection 封装了一个连接到提供者的活动连接。它的一些方法包括:
createSession(boolean, int):返回一个 Session 对象。boolean 参数指出 Session 是否被处理, int 则指出确认模式(请参阅 确认)。
http://www6.software.ibm.com/developerworks/cn/education/java/j-jms/tutorial/j-jms-3-12.html
start():激活提供者发送消息。
stop():临时停止消息的发送,可以用 start() 重新开始发送。
close():关闭到提供者的连接,并释放以它的名义占用的所有资源。
Session 第 4 页(共8 页)
Session 是用来发送和接收消息的单线程的上下文。它的一些方法包括:
createProducer(Destination):返回一个 MessageProducer 对象,向指定的 Destination 发送消息。
createConsumer(Destination):返回一个 MessageConsumer 对象来接收来自指定 Destination 的消息。
commit():提交当前事务的所有使用的或者产生的消息。
rollback():回滚当前事务所有使用的或者产生的消息。
create<MessageType>Message(...):一组返回 <MessageType>Message 的方法——例如,MapMessage、TextMessage 等。
Destination 第 5 页(共8 页)
Destination 封装消息的目的地。它是一个从 JNDI 检索的受管理对象。
MessageProducer 第 6 页(共8 页)
MessageProducer 用于发送消息。它的一些方法包括:
send(Message):发送指示的 Message。
setDeliveryMode(int):设置后续消息的发送模式,有效值为 DeliveryMode.PERSISTENT 和 DeliveryMode.NON_PERSISTENT。
setPriority(int):设置后续发送消息的优先级,有效值为 0 到 9。
setTimeToLive(long):设置后续发送消息失效前的持续时间,以毫秒计。
MessageProducer 第 6 页(共8 页)
MessageProducer 用于发送消息。它的一些方法包括:
send(Message):发送指示的 Message。
setDeliveryMode(int):设置后续消息的发送模式,有效值为 DeliveryMode.PERSISTENT 和 DeliveryMode.NON_PERSISTENT。
setPriority(int):设置后续发送消息的优先级,有效值为 0 到 9。
setTimeToLive(long):设置后续发送消息失效前的持续时间,以毫秒计。
MessageConsumer 第 7 页(共8 页)
MessageConsumer 被用来接收消息。它的一些方法包括:
receive():返回下一发到达的消息,该方法在消息可用之前会受到阻塞。
receive(long):接收在 long 毫秒内到达的下一个消息,如果在时间限制内没有消息到达,则该方法返回 null。
receiveNoWait:如果有一个消息立即可用,则接收下一个消息,如果没有消息可用,则该方法返回 null。
setMessageListener(MessageListener):设置 MessageListener,MessageListener 对象在消息到达时接收它们,也就是异步接收(请参阅 MessageListener )。
http://www6.software.ibm.com/developerworks/cn/education/java/j-jms/tutorial/j-jms-4-8.html
MessageListener 第 8 页(共8 页)
MessageListener 是有一个单一方法——onMessage(Message)——的接口,它提供了消息的异步接收和处理。
应该通过客户机类和该类使用 setMessageListener(MessageListener) 方法传递给 MessageConsumer 对象的实例来实现这个接口。在消息到达目的地时,用 onMessage(Message) 将它传递给对象。
http://www6.software.ibm.com/developerworks/cn/education/java/j-jms/tutorial/j-jms-4-8.html
http://www6.software.ibm.com/developerworks/cn/education/java/j-jms/tutorial/j-jms-5-1.html
分享到:
相关推荐
JMS的核心接口包括: - **ConnectionFactory**:创建到JMS提供者的连接。 - **Connection**:连接应用程序和消息服务器,用于创建会话。 - **Destination**:代表消息的目标,可以是队列或主题。 - **...
Java消息服务(Java Message Service,简称JMS)是Java平台中用于企业级应用集成的API,它定义了一组标准接口,允许应用程序创建、发送、接收和读取消息。`javax.jms`包是JMS规范的核心部分,包含了各种与消息传递...
官方jar,用于JMS queue和topic开发
标题中的“国产化中间件产品对接,jms的接口参考”指的是在信息技术领域,特别是中国国内,使用本土化的中间件产品进行系统间的通信,而这里的通信机制是基于Java消息服务(Java Message Service,简称JMS)。JMS是...
在JMS 1.1中,`jms-1.1`可能包含了这些接口的定义,如`javax.jms.Queue`, `javax.jms.Topic`, `javax.jms.MessageProducer`, `javax.jms.MessageConsumer`, `javax.jms.Session`等。通过这些接口,开发者可以构建...
3. **桥接芯片的作用**: JMS583作为桥接芯片,它的核心功能是将USB 3.1 Gen 2接口的数据信号转换为PCIe Gen3x2接口可识别的形式,实现两个不同协议间的通信,使得外接的USB设备(如存储设备)能够通过M.2接口与主板...
javax.jms包,sun的JMS接口规范包 2018年6月4日17:05:30
UASP是USB接口的一个高级传输协议,相比于传统的USB协议(如Bulk-Only Transport, BOT),它能够显著提高数据传输的速度和效率。UASP通过并行处理命令和数据,减少了数据传输时的延迟,提高了读写速度,尤其在大容量...
JMS583正是利用了这种高速USB标准,将来自USB接口的数据高效地转化为PCIe接口的信号。 **PCIe Gen3x2接口** PCI Express(PCIe)是一种高速串行计算机扩展总线标准,Gen3x2表示第三代PCIe,数据宽度为2条通道...
jms官方接口
本篇将重点讲解如何利用soapUI 3.5这个强大的接口测试工具来测试JMS消息。 首先,Java消息服务(JMS)是一种API,它提供了一种标准的方式来访问消息中间件,使得应用程序可以在不同的平台之间发送和接收消息。JMS...
Java消息服务(Java Message Service,简称JMS)是Java平台中用于企业级应用集成的API,它定义了一种标准的接口,使得应用程序可以与各种消息中间件进行交互,实现异步的消息传递。JMS允许应用程序创建、发送、接收...
Classes contained in javax.jms.jar: javax.transaction.xa.XAResource.class javax.jms.BytesMessage.class javax.jms.Message.class javax.jms.JMSException.class javax.jms.Destination.class javax.jms....
Java消息服务(JMS,Java Message Service)是一种用于在分布式环境中进行异步通信的应用程序接口。JMS允许应用程序创建、发送、接收和读取消息,有效地处理系统间的解耦和消息传递。以下是对JMS的一些关键知识点的...
3. **JMS接口**:`javax.jms` 包包含了一系列的接口,如`ConnectionFactory`、`Destination`、`MessageProducer`、`MessageConsumer`、`Message`等。`ConnectionFactory`用于创建连接到消息服务的连接,`Destination...
Java消息服务(Java Message Service,简称JMS)是Java平台中用于企业级应用间异步通信的标准接口。它提供了一种可靠的消息传递机制,允许应用程序创建、发送、接收和读取消息。`jms-1.1.jar` 是一个包含了JMS 1.1...
javax.jms.BytesMessage.class javax.jms.Connection.class javax.jms.ConnectionConsumer.class javax.jms.ConnectionFactory.class javax.jms.ConnectionMetaData.class javax.jms.DeliveryMode.class javax.jms....
Java 消息服务(JMS,Java Message Service)是一种用于在分布式系统中进行异步数据交换的API,它为应用程序提供了标准的接口来发送和接收消息。JMS规范由JavaSoft(现为Oracle公司的一部分)制定,目的是促进不同...