上述代码示例中,使用了Apache Camel的简单表达式语言来判断消息体中是否包含特定的关键字。在选择语句中,.when().simple("${body} contains 'keyword1'")
表示当消息体中包含关键字"keyword1"时,执行下一步的操作。类似地,.when().simple("${body} contains 'keyword2'")
表示当消息体中包含关键字"keyword2"时,执行下一步的操作。
在示例中,使用了.to("activemq:queue:consumer1Queue")
将消息发送到名为"consumer1Queue"的队列中,使用了.to("activemq:queue:consumer2Queue")
将消息发送到名为"consumer2Queue"的队列中,使用了.to("activemq:queue:defaultQueue")
将消息发送到名为"defaultQueue"的队列中。
通过根据消息体的内容来选择消费者,我们可以根据不同的条件将消息发送到不同的队列中,从而实现更灵活和可扩展的消息传递机制。