深入解析jms消息

jms消息种类

1、message

2、textmessage

3、objectmessage

4、bytemessage

5、strammessage

6、mapmessage

消息分为三部分:消息头,消息属性,最后就是数据本身

消息能作为通知和携带数据的工具

JMSDestination

使用一个Topic或Queue对象来表识目的地

Topic destination=(topic)message.getJMSDestination();

JMSDeliveryMode

在JMS中,传送模式有两种类型:持久性模式和非持久性模式。

一条持久性消息应该被传送一次,如果传送出现故障,该消息并不会丢失,会在下次服务器恢复后再次传送

JMSMessageID

JMSMessageID标志了一条数据的ID

JMSTimestamp 是JMS提供者发布的消息,接受者接受消息的时间戳

JMSExpiration 一个Message对象的有效期,防止把过期的消息传送给消费者

long timeToLive = message.getJMSExpiration

TopocPublisher topicpublisher=topicSession.createPublisher(topic);

topicPublisher.setTimeTolive(long);

JMSRedelivered

JMSRedelivered消息头表示该消息将被重新传送给消费者,如果该消息被重新传送,消息头就为true,否则为false

JMSPriority

在传送一条消息时,消息生产这能够为该消息分配一个优先级。消息优先级分为两类:0-4(普通)与5-9(紧急)

客户端:int priority=message.getJMSPriority();

生产端:TopicPublisher topicPublisher=TopicSession.createPublisher(someTopic);

topicPublisher.setPriority(9);

开发者分配的消息头

JMSReplyTo

一个JMS消息生产这可能会要求消费者对消息作出应答

javax.jms,Destination,标明了消费者应达到的地址

JMSCorrelationID

用于将当前的消息和先前的某些消息或应用程序某些特定的id关联起来,这个可以是任何值

JMSType

猜你喜欢

转载自gdfdfg-tech.iteye.com/blog/1874926