JMS

ConnectionFacatory:被管理的对象,由客户端(发布者/接受者)使用,用来创建一个链接。
Connection:提供一个JMS消息的活动链接。
Destination:封装了消息目的地,或者主题类型。
Session:一个用来发送和接受消息的线上上下文。
MessageProducer:由session创建的,用来发送消息的对象。
MessageConsumer:由session创建的用来接受消息的对象。


JMS

Jms的消息分为三部分:消息头、消息属性、消息体

消息头:包含了消息的客户端和提供者用来路由和识别消息的数据。

消息头包含的字段:

JMSDestination:包含了消息发往的目的地或者主题信息。

JMSDeliveryMode:消息传送模式。spring提供额jms模板提供了三种模式:DEFAULT_DELEVERY_MODE 默认模式、DEFAULT_PRIORITY、DEFAULT_TIME_TO_LIVE

JMSMessageID:消息标示,唯一性,每个消息都不同,即便是承载者相同消息体的消息。

JMSTimestamp:发送时间

JMSCorrelationID:与当前消息关联的其他消息的标示

JMSReplyTo:回复消息的目的地。带有这样属性的消息通常是发送方希望有一个响应,这个响应是可选的。

JMSRedelivered:带有该字段的消息通常过去发送过但是没有被确认,如果要再次发送,提供者必须设置该字段。如果true,则消息接受者必须进行消息重复处理的逻辑。

JMSType:消息类型标示。官方文档的解释:

JMSType头字段包含了由客户端在发送消息时提供的消息类型标识。一些消息提供者使用消息库来存储由应用发送的消息定义。type头字段可以引用提供者库中的消息定义。JMS没有定义一个标准的消息定义库,也没有定义这个库中所包含的各种定义的命名策略。一些消息系统要求每个被创建的应用消息都必须有一个消息类型定义,并且每个消息都指定它的类型。为了能够使JMS工作于这些消息系统提供者,无论应用是否使用,JMS客户端最好赋值JMSType ,这样可以保证为需要该头字段的提供者提供了正确的设置。为了保证移植性,JMS客户端应使用安装时在提供者消息库中定义的语义值作为JMSType的值。

JMSExpiration :过期时间。

JMSPriority:优先级。

消息属性:包括了标准投资段之外的额外添加给消息的可选的字段。比如 应用指定的属性。

消息体:消息携带的内容。


你可能感兴趣的:(spring,jms,活动)