Springboot-kafka的入门使用

该文章介绍了如何在Springboot项目中使用Kafka,包括添加依赖、配置消费者和生产者、创建ProducerController发送消息以及KafkaConsumer监听并消费消息。示例展示了发送hello,kafka到主题firstSend的过程。
摘要由CSDN通过智能技术生成

Springboot-kafka的入门使用

1. 导入依赖

 <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        
        <dependency>
            <groupId>org.springframework.kafka</groupId>
            <artifactId>spring-kafka</artifactId>
        </dependency>

        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.kafka</groupId>
            <artifactId>spring-kafka-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

2. 编写消费者和生产者配置

spring:
  application:
    name: sringboot-kafka-lemon

  kafka:
    # 指定kafka地址
    bootstrap-servers: 172.17.10.110:9092
    # 配置指定的key和value的序列化器
    producer:
      key-serializer: org.apache.kafka.common.serialization.StringSerializer
      value-serializer: org.apache.kafka.common.serialization.StringSerializer

    # 配置指定的key和value的反序列化器
    consumer:
      key-deserializer: org.apache.kafka.common.serialization.StringDeserializer
      value-deserializer: org.apache.kafka.common.serialization.StringDeserializer
      # 指定消费者组
      group-id: lemon

3. ProducerController

@RestController
public class ProducerController {

    @Autowired
    KafkaTemplate<String,String> kafkaTemplate;

    /**
     * 发送到指定的topic
     */
    @RequestMapping("/send")
    public String send(String msg){
        kafkaTemplate.send("firstSend", msg);
        return "发送成功";
    }
}

4. Kafkaconsumer

@Component
public class KafkaConsumer {
    @KafkaListener(topics = "firstSend")
    public void  consumerTopics(String msg){
        System.out.println("receive:"+msg);
    }
}

5. 测试

localhost:8080/send/msg="hello,kafka“

测试

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值