
JMS
chenpingpi
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
深入掌握JMS(一)
1. JMS基本概念 JMS(Java Message Service) 即Java消息服务。它提供标准的产生、发送、接收消息的接口简化 企业 应用的开发。它支持两种消息通信模型:点到点(point-to-point)(P2P)模型和发布/订阅(Pub/Sub)模型。P2P 模型规定了一个消息只能有一个接收者;Pub/Sub 模型允许一个消息可以有多个接收者。 ...原创 2010-09-07 18:43:08 · 142 阅读 · 0 评论 -
深入掌握JMS(十一)TemporaryQueue和TemporaryTopic
TemporaryQueue和TemporaryTopic,从字面上就可以看出它们是“临时”的目的地。可以通过Session来创建,例如: TemporaryQueue replyQueue = session.createTemporaryQueue(); 虽然它们是由Session来创建的,但是它们的生命周期确实整个Connection。如果在一个Con...原创 2010-09-07 18:57:21 · 132 阅读 · 0 评论 -
深入掌握JMS(十)JMSCorrelationID和Selector
前面讲过JMSCorrelationID主要是用来关联多个Message,例如需 要回复一个消息的时候,通常把回复的消息的 JMSCorrelationID设置为原来消息的ID。在下面这个例子中,创建了三个消息生产者A,B,C和三个消息消费者A,B,C。生产者A给消费 者A发送一个消息,同时需要消费者A给它回复一个消息。B、C与A类似。 简图如下: 生产者A -...原创 2010-09-07 18:56:24 · 131 阅读 · 0 评论 -
深入掌握JMS(九)Selector
前面的例子中创建一个消息消费者使用的是: sesssion .createConsumer(destination) 另外,还提供了另一种方式: sesssion .createConsumer(destination, selector) 这里selector是一个字符串,用来过滤消息。也就是说,这种方式可以创建一个可以只接收特定消息的一个消费...原创 2010-09-07 18:54:14 · 107 阅读 · 0 评论 -
深入掌握JMS(八)JMSReplyTo
在下面的例子中,首先创建两个Queue,发送者给一个Queue发送,接收者接收到消息之后给另一个Queue回复一个Message,然后再创建一个消费者来接受所回复的消息。 import javax.jms.Connection; import javax.jms.JMSException; import javax.jms.Message; import javax.jms.Message...原创 2010-09-07 18:52:47 · 110 阅读 · 0 评论 -
深入掌握JMS(七)DeliveryMode例子
在下面的例子中,分别发送一个Persistent和nonpersistent的消息,然后关闭退出JMS。 import javax.jms.Connection; import javax.jms.DeliveryMode; import javax.jms.MessageProducer; import javax.jms.Queue; import javax.jms.Session...原创 2010-09-07 18:51:02 · 118 阅读 · 0 评论 -
深入掌握JMS(六)消息头
一个消息对象分为三部分:消息头(Headers),属性 (Properties)和消息体(Payload)。对于StreamMessage和 MapMessage,消息本身就有特定的结构,而对于TextMessage,ObjectMessage和BytesMessage是无结构的。一个 消息可以包含一些重要的数据或者仅仅是一个事件的通知。 消息的Headers部分通常包含一...原创 2010-09-07 18:49:38 · 109 阅读 · 0 评论 -
深入掌握JMS(五)实战Topic
与Queue不同的是,Topic实现的是发布/订阅模型,在下面的例子中,启动2个消费者共同监听一个Topic,然后循环给这个Topic中发送多个消息。 import javax.jms.Connection; import javax.jms.JMSException; import javax.jms.Message; import javax.jms.MessageConsumer; ...原创 2010-09-07 18:48:03 · 110 阅读 · 0 评论 -
深入掌握JMS(四)实战queue
Queue实现的是点到点模型,在下面的例子中,启动2个消费者共同监听一个Queue,然后循环给这个Queue中发送多个消息,我们依然采用ActiveMQ。 import javax.jms.Connection; import javax.jms.DeliveryMode; import javax.jms.JMSException; import javax.jms.Message;...原创 2010-09-07 18:46:49 · 118 阅读 · 0 评论 -
深入掌握JMS(三)MessageListener
消息的消费者接收消息可以采用两种方式: 1、consumer.receive() 或 consumer.receive(int timeout); 2、注册一个MessageListener。 采用第一种方式,消息的接收者会一直等待下去,直到有消息到达,或者超时。后一种方式会注册一个监听器,当有消息到达的时候,会回调它的onMessage()方法。下面举例说明: ...原创 2010-09-07 18:45:33 · 196 阅读 · 0 评论 -
深入掌握JMS(二)一个例子
前一讲简单的介绍了一下JMS的基本概念, 这一讲结合一个例子让大家深入理解前一讲的基本概念. 首先需要做的是选择一个JMS提供者, 如果在JavaEE环境中可以不用考虑这些. 我们选择ActiveMQ, 官方地址: http://activemq.apache.org/. 网上有很多介绍ActiveMQ的文档, 所以在这里就不介绍了. 按照上一讲的这个简图, Conne...原创 2010-09-07 18:44:22 · 107 阅读 · 0 评论 -
深入掌握JMS(十二)MDB
在EJB3中,一个MDB(消息驱动Bean)就是一个实现了MessageListener接口的POJO。下面就是一个简单的MDB。 @MessageDriven(activationConfig={ @ActivationConfigProperty(propertyName="destinationType", propertyValue="...原创 2010-09-07 18:58:14 · 180 阅读 · 0 评论