Kafka07-集成-尚硅谷

4-Kafka 集成

### 文章目录

  • [4-Kafka 集成](#文章目录 4-Kafka 集成 @[toc] 4.2 Java 应用场景 4.2.1 Spring Boot 集成 4.2.1.1 创建 Spring Boot 项目 4.2.1.2 编写功能代码 4.2.1.3 集成测试步骤)
  • [@[toc]](#文章目录 4-Kafka 集成 @[toc] 4.2 Java 应用场景 4.2.1 Spring Boot 集成 4.2.1.1 创建 Spring Boot 项目 4.2.1.2 编写功能代码 4.2.1.3 集成测试步骤)
  • [4.2 Java 应用场景](#文章目录 4-Kafka 集成 @[toc] 4.2 Java 应用场景 4.2.1 Spring Boot 集成 4.2.1.1 创建 Spring Boot 项目 4.2.1.2 编写功能代码 4.2.1.3 集成测试步骤)
  • [4.2.1 Spring Boot 集成](#文章目录 4-Kafka 集成 @[toc] 4.2 Java 应用场景 4.2.1 Spring Boot 集成 4.2.1.1 创建 Spring Boot 项目 4.2.1.2 编写功能代码 4.2.1.3 集成测试步骤)
  • [4.2.1.1 创建 Spring Boot 项目](#文章目录 4-Kafka 集成 @[toc] 4.2 Java 应用场景 4.2.1 Spring Boot 集成 4.2.1.1 创建 Spring Boot 项目 4.2.1.2 编写功能代码 4.2.1.3 集成测试步骤)
  • [4.2.1.2 编写功能代码](#文章目录 4-Kafka 集成 @[toc] 4.2 Java 应用场景 4.2.1 Spring Boot 集成 4.2.1.1 创建 Spring Boot 项目 4.2.1.2 编写功能代码 4.2.1.3 集成测试步骤)
  • [4.2.1.3 集成测试步骤](#文章目录 4-Kafka 集成 @[toc] 4.2 Java 应用场景 4.2.1 Spring Boot 集成 4.2.1.1 创建 Spring Boot 项目 4.2.1.2 编写功能代码 4.2.1.3 集成测试步骤)

4.2 Java 应用场景

4.2.1 Spring Boot 集成
4.2.1.1 创建 Spring Boot 项目
  1. 使用 Spring Initializr 或 IDE 新建 Maven 项目,parent 指向 spring-boot-starter-parent 3.0.5,JDK 17。
  2. pom.xml 核心依赖:
    • spring-boot-starter-web(排除 logging)
    • spring-kafka
    • kafka-clients 3.6.1
    • 工具:lombokfastjson、hutool-json、hutool-db
  3. resources/application.yml 关键配置:
    • bootstrap-servers: localhost:9092
    • Producer:acks=all、retries=0、batch-size=16384、buffer-memory=33554432
    • Consumer:group-id=test、auto-offset-reset=earliest、enable-auto-commit=true、max-poll-records=2
    • Listener:type=batch、concurrency=2、missing-topics-fatal=true
    • Server:port=9999
4.2.1.2 编写功能代码
  1. 配置常量类 SpringBootKafkaConfig:定义 TOPIC_TEST = "test"GROUP_ID = "test"
  2. 生产者控制器 KafkaProducerController
    • POST /kafka/produce
    • 接收任意 JSON → JSONUtil.toJsonStrkafkaTemplate.send
  3. 批量消费者 KafkaDataConsumer
    • @KafkaListener(topics = TOPIC_TEST, groupId = GROUP_ID)
    • 接收 List<String>,逐条解析并打印 "data" 字段
4.2.1.3 集成测试步骤
  1. 启动 ZooKeeper
  2. 启动 Kafka
  3. 启动 Spring Boot 应用(端口 9999)
  4. 用 Postman 向 http://localhost:9999/kafka/produce 发 POST 请求,观察控制台消费者输出
相关推荐
Knight_AL9 小时前
从 0 到 1:PG WAL → Debezium → Kafka → Spring Boot → Redis
spring boot·redis·kafka
无籽西瓜a9 小时前
【西瓜带你学Kafka | 第六期】Kafka 生产确认、消费 API 与分区分配策略(文含图解)
java·分布式·后端·kafka·消息队列·mq
无籽西瓜a9 小时前
【西瓜带你学Kafka | 第七期】Kafka 日志存储体系:保留清理、消息格式与分段刷新策略(文含图解)
java·分布式·后端·kafka·消息队列·mq
冷小鱼1 天前
消息队列(MQ)技术全景科普:从选型到AI+未来
人工智能·kafka·rabbitmq·rocketmq·mq·pulsar
运维老司机1 天前
Kafka 单节点部署(Docker Compose + 数据持久化)
分布式·docker·kafka
JAVA面经实录9171 天前
如何选择适合项目的「限流 / 熔断 / 降级」方案
java·spring·kafka·sentinel·guava
ezreal_pan2 天前
Kafka Docker 部署持久化避坑指南:解决重启后 Cluster ID 不匹配问题
分布式·docker·zookeeper·容器·kafka·devops
小张小张爱学习2 天前
Kafka面试题
分布式·kafka
Devin~Y2 天前
大厂Java面试实录:Spring Boot/Cloud + Redis/Kafka + JWT + RAG/Agent(小Y翻车版)
java·spring boot·redis·spring cloud·kafka·spring security·jwt
Jackyzhe2 天前
从零学习Kafka:生产者分区机制
分布式·学习·kafka