Spring Kafka 之 @KafkaListener 注解详解
warning:
这篇文章距离上次修改已过419天,其中的内容可能已经有所变动。
@KafkaListener 注解用于定义一个方法作为Kafka消息的监听器,它可以用于消息的生产和消费。
以下是 @KafkaListener 注解的一些常用属性:
topics:要监听的Kafka主题名称。可以是一个具体的主题名称,也可以是一个用逗号分隔的多个主题名称列表。groupId:消费者组ID,用于指定这个监听器所属的消费者组。containerFactory:指定用于创建消息监听容器的工厂bean的名称。errorHandler:指定处理异常的处理器。topicsPattern:用正则表达式指定要监听的主题模式。
下面是一个使用 @KafkaListener 注解的简单例子:
import org.apache.kafka.clients.consumer.ConsumerRecord;
import org.springframework.kafka.annotation.KafkaListener;
import org.springframework.stereotype.Component;
@Component
public class KafkaConsumer {
@KafkaListener(topics = "myTopic", groupId = "myGroup")
public void listen(ConsumerRecord<?, ?> record) {
System.out.println("Received message in group myGroup: " + record);
}
}在这个例子中,listen 方法会监听名为 myTopic 的Kafka主题,并属于名为 myGroup 的消费者组。当有消息到达时,该方法会被调用,并接收到的消息作为 ConsumerRecord 对象传入。
评论已关闭