Kafka入门到精通(四)-SpringBoot+Kafka

一丶IDEA创建一个空项目

二丶添加相关依赖

复制代码
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.kafka</groupId>
            <artifactId>spring-kafka</artifactId>
            <version>2.9.13</version>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
        </dependency>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>1.2.28</version>
        </dependency>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <scope>test</scope>
        </dependency>

        <dependency>
            <groupId>com.alibaba.fastjson2</groupId>
            <artifactId>fastjson2</artifactId>
            <version>2.0.12</version>
        </dependency>
    </dependencies>

三丶编写简单生产者

复制代码
    /**
     * 简单的生产者消费者
     * @param message
     */
    @GetMapping("/kafka/normal/message")
    public void sendNormalMessage(@RequestParam("message") String message) {
        log.info("======================="+message);
        kafkaTemplate.send("sb_topic", 0, System.currentTimeMillis(), "key1", message);
    }

四丶编写简单消费者

复制代码
@Component
public class KafkaConsumer {
 
    //监听消费
    //@KafkaListener(topics = {"sb_topic"})
    @KafkaListener(topics = {"sb_topic","callbackOne_topic"}, groupId = "testGroup")
    public void onNormalMessage(ConsumerRecords<String,Object> records) {
        for (ConsumerRecord<String, Object> record : records) {
            System.out.printf("offset = %d, key = %s, value = %s\n", record.offset(), record.key(), record.value());
        }
    }
 
}

这里有个坑,ConsumerRecord如果不加s会报错,我之间在借鉴他人代码的时候出现的,不知道是不是版本问题。我也刚用kafka,正在研究哈哈,见谅见谅;

postman请求:

成功:

结尾:目前只是一个简单的demo,后续我在完善,我也正在学习这玩意儿,哈哈,喜欢的朋友点个赞收藏吧;

相关推荐
源码获取_wx:Fegn0895几秒前
基于springboot + vue图书商城系统
java·vue.js·spring boot·后端·spring·课程设计
惊鸿Randy6 分钟前
Spring Boot 应用 Docker 部署完整指南
spring boot·docker
ArabySide7 分钟前
【Spring Boot】用Spring AOP优雅实现横切逻辑复用
java·spring boot·后端
南山乐只14 分钟前
Spring Boot 2.x => 3.x 升级指南
java·spring boot·后端
Q_Q196328847515 分钟前
python+django/flask+vue的智能房价分析与预测系统
spring boot·python·django·flask·node.js·php
汝生淮南吾在北18 分钟前
SpringBoot3+Vue3新闻动态网站
前端·javascript·vue.js·spring boot·毕业设计·毕设
weixin_44247222125 分钟前
12A高效同步降压转换器在便携设备、网络系统与分布式电源中与汽车电子工业控制的WD5030K应用与设计指南
分布式·汽车·工业控制·电路设计·同步降压·12a·qfn5x5
Q_Q51100828536 分钟前
python+django/flask+vue的购物管理系统
spring boot·python·django·flask·node.js
Q_Q51100828539 分钟前
python+springboot+django/flask基于数据挖掘的高考志愿推荐系统
spring boot·python·django·flask·node.js·php
Q_Q51100828542 分钟前
python+springboot+django/flask基于用户评论主题挖掘的旅游景点推荐系统
spring boot·python·django·flask·node.js