@Component @RocketMQMessageListener(topic = "my-topic",consumerGroup="demo-consumer-group") public class ConsumerSimple implements RocketMQListener<String> { @Override public void onMessage(String msg) { //此方法被调用表示接收到消息,msg形参就是消息内容 //处理消息... System.out.println(msg); } }如果是相同类不同方法相同参数怎么判断,举个示例
时间: 2024-01-26 13:04:42 浏览: 73
jvm-sandbox demo
如果需要在同一个消费者类中处理不同的消息类型,可以通过添加不同的 @RocketMQMessageListener 注解来实现。这些注解需要分别指定不同的 topic 和 consumerGroup。
下面是一个示例代码:
```
@Component
public class ConsumerSimple {
@RocketMQMessageListener(topic = "topic1", consumerGroup = "group1")
public void handleMessage1(String msg) {
// 处理 topic1 消息
System.out.println("Received message from topic1: " + msg);
}
@RocketMQMessageListener(topic = "topic2", consumerGroup = "group1")
public void handleMessage2(String msg) {
// 处理 topic2 消息
System.out.println("Received message from topic2: " + msg);
}
}
```
在这个示例中,我们定义了一个消费者类 ConsumerSimple,并添加了两个方法 handleMessage1 和 handleMessage2。这两个方法分别使用了不同的 @RocketMQMessageListener 注解来指定消费的 topic 和 consumerGroup。当 RocketMQ 接收到消息时,会根据 topic 和 consumerGroup 的值来调用相应的方法,从而实现不同类型消息的处理。
阅读全文