SpringBoot整合Kafka详解(手把手教你4步成功)

文摘   2024-09-02 17:29   四川  

关注mikechen的架构笔记十余年BAT架构经验倾囊相授


大家好,我是mikechen。

SpringBoot整合Kafka是Java开发经常使用到的,下面我就来详解SpringBoot整合Kafka的详细步骤@mikechen


最新mikechen原创超30万字《阿里架构师进阶专题合集》和《最全大厂面试题及答案总结》,请关注本公众号【mikechen的架构笔记】,后台回复:资料,即可领取。


SpringBoot整合Kafka

在SpringBoot的pom文件中导入Kafka依赖

如下所示:

<dependency>    <groupId>org.springframework.kafka</groupId>    <artifactId>spring-kafka</artifactId>    <version>2.7.0</version></dependency>

配置 Kafka

在 application.properties 文件中配置 Kafka 连接信息,包括 Kafka 服务器地址和端口号等。

如下所示:

spring.kafka.bootstrap-servers=localhost:9092spring.kafka.consumer.group-id=my-group

配置项说明:

    bootstrap-servers:Kafka连接信息;consumer.group-id:配置消费者组ID,可任意指定;


发送Kafka消息

通过Spring自动注入KafkaTemplate对象,调用 kafkaTemplate.send方法发送消息。

如下所示:

import org.springframework.beans.factory.annotation.Autowired;import org.springframework.kafka.core.KafkaTemplate;import org.springframework.stereotype.Component;
@Componentpublic class KafkaProducer { @Autowired private KafkaTemplate<String, String> kafkaTemplate;
public void send(String topic, String message) { kafkaTemplate.send(topic, message); }}

发送消息的参数:分别是topic名称和要发送的消息。

Kafka接收消息

通过监听器接收消息,@KafkaListener注解中传入topic名称。

如下所示:

import org.springframework.kafka.annotation.KafkaListener;import org.springframework.stereotype.Component;
@Componentpublic class KafkaConsumer { @KafkaListener(topics = "my-topic") public void onMessage(String message) { System.out.println("Received message: " + message); }}

这里使用了 Spring Kafka 提供的 @KafkaListener 注解来监听消息,并在收到消息时输出到控制台。

启动应用程序

在启动应用程序后,Kafka 消费者会自动监听 "my-topic" 主题的消息,并在收到消息时输出到控制台。

以上就是SpringBoot整合Kafka详解,更多SpringBoot请查看:SpringBoot框架最全详解(图文总结)

以上


最后送大家一个福利:

送我原创超30万字阿里架构师进阶专题合集


以及给大家整理最全大厂Java面试题及答案详解,包含:Java、多线程、JVM、Spring、MySQL、Redis、中间件...等必考题答案详解。


需要以上架构专题&面试答案的同学,加我微信即可领取!


添加时备注:资料






mikechen的架构笔记
十余年BAT架构经验倾囊相授!
 最新文章