提取jms文本内容

Extract jms text content

我只想从 jms 消息中提取没有 headers 和属性的 jms 消息文本。 提取 JMS header :msg.getJMSCorrelationID(); 要提取 JMS 属性:jmsMessage.getPropertyNames() 但是如何只从消息中获取文本值呢? 在下面的示例消息中,我只想提取“hello queue”。是否有 java 函数来执行此操作?

如果消息正文是短信(纯文本或XML),可以像下面这样提取。

String msgBody = ((TextMessage) message).getText();

JMS 2.0 API 在 Message 接口中公开了附加方法 <T> T getBody(Class<T> c)

如果您的消息代理或源符合 JMS 2.0,那么我们将以更干净的方式提取消息正文,无需对象强制转换,如下所示。

String msgBody = message.getBody(String.class);

查看 this post 了解更多详情。