Java 使用RabbitTemplate 消费特定Tag的消息
时间: 2024-01-07 11:03:19 浏览: 132
浅谈使用java实现阿里云消息队列简单封装
在使用 RabbitTemplate 消费特定 Tag 的消息时,可以通过设置 MessageListenerAdapter 的参数来实现。具体步骤如下:
1. 创建一个 MessageListenerAdapter 对象,并设置其参数:
```
MessageListenerAdapter adapter = new MessageListenerAdapter(new Object() {
public void handleMessage(String message) {
System.out.println("Received message with tag 'special': " + message);
}
});
adapter.setMessageConverter(new StringMessageConverter());
adapter.setDefaultListenerMethod("handleMessage");
```
2. 创建一个 SimpleMessageListenerContainer 对象,并设置其参数:
```
SimpleMessageListenerContainer container = new SimpleMessageListenerContainer();
container.setConnectionFactory(connectionFactory);
container.setQueueNames(queueName);
container.setMessageListener(adapter);
container.setAcknowledgeMode(AcknowledgeMode.AUTO);
```
3. 使用 RabbitTemplate 来消费消息:
```
rabbitTemplate.receive(queueName, "special");
```
其中,第二个参数 "special" 就是特定的 Tag,表示只消费带有该 Tag 的消息。
阅读全文