JMS消息头与属性详解及ActiveMQ配置指南
1. JMSCorrelationID
JMSCorrelationID 通常与 JMSReplyTo 和 JMSMessageID 头部一起使用,用于发送消息的回复。以下是使用示例代码:
public void onMessage(Message message){
try {
TextMessage textMessage = (TextMessage)message;
Queue replyQueue = (Queue)textMessage.getJMSReplyTo();
Message replyMessage = session.createMessage();
replyMessage.setJMSCorrelationID(message.getJMSMessageID());
sender.send(replyQueue, replyMessage);
} catch (JMSException jmse){jmse.printStackTrace();}
}
当 JMS 客户端收到回复消息时,它可以将新消息的 JMSCorrelationID 与发送消息的 JMSMessageID 进行匹配,从而知道哪个消息收到了回复。JMSCorrelationID 可以是任何值,不一定是 JMSMessageID。不过,如果使用自定义 ID,不要以 “ID:” 开头,因为该前缀是 JMS 提供者生成的 ID 所保留的。
访问和修改