以上代码中,我们使用`@KafkaListener`注解监听名为`topic1`的Kafka主题,当接收到消息时,会调用`handleMessage`方法进行处理。
### @KafkaListener注解原理
在Spring Boot中,`@KafkaListener`注解的原理主要是依赖于`KafkaMessageListenerContainer`类。`KafkaMessageListenerContainer`是Spring Kafka提供的一种消息监听器容器,它可以根据配置信息监听并消费Kafka消息。
当我们在消息监听方法上添加`@KafkaListener`注解时,Spring Boot会自动创建`KafkaMessageListenerContainer`实例,并将消息路由到相应的处理方法。在消息处理方法上,我们可以使用不同的参数类型来接收不同类型的消息。
### @KafkaListener注解使用方法
在使用`@KafkaListener`注解时,我们需要注意一些细节和使用方法。
#### 1. 使用topics或topicPattern指定要监听的主题
我们可以使用`topics`或`topicPattern`属性来指定要监听的Kafka主题。`topics`属性用于指定固定的Kafka主题,而`topicPattern`属性用于指定符合正则表达式的Kafka主题。
以下是一个使用`topics`属性监听Kafka消息的示例:
@KafkaListener(topics = “topic1”)
public void handleMessage(String message) {