【问题标题】:Checking JMS type while reading messages asynchronously异步读取消息时检查 JMS 类型
【发布时间】:2015-02-05 22:40:25
【问题描述】:

我的 JMS 中有一个队列。在向队列发送消息时,我将 JMStype 称为“XYZ”。在消费者端,我有一个 onMessage 监听器。我想知道的是以下内容

  1. 在 onMessage 侦听器中,如何在不使消息出列的情况下检查消息的 JMStype。如果我正在运行的实例发现 JMStype 不是“XYZ”,那么它不应该做任何事情并且不应该将它从我的队列中出列。只有需要 JMStype 'XYZ' 消息的实例才能将消息出列并进一步处理。

感谢您抽出宝贵时间阅读我的查询。

【问题讨论】:

    标签: java jms spring-jms jms-topic openmq


    【解决方案1】:

    为此,我建议使用消息选择器而不是 JMSTypeSpring JMS 消息侦听器允许您根据 JMS 属性以及 JMS 标头过滤消息。

    将消息写入队列时,您可以将消息属性设置为"type='abc'",在侦听器的配置中,您可以通过提供messageSelector="type='abc'" 来查找某些“类型”。

    这样只有匹配选择器的消息才会从队列中被挑选出来。

    【讨论】:

      猜你喜欢
      • 2010-12-12
      • 1970-01-01
      • 1970-01-01
      • 2019-06-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-16
      相关资源
      最近更新 更多