SpringBoot是一个在JavaEE开发中非常常用的组件。可以用于Kafka的生产者,也可以用于SpringBoot的消费者。
一、SpringBoot项目搭建
如果Spring Initializr产生如下错误解决方法
Custom的URL改为 https://start.aliyun.com/
SpringBoot项目创建成功
二、 生产者代码
package com.myself.springboot.springbootkafka.controller;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.kafka.core.KafkaTemplate;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
/**
* @author :jizhibing
* @date :Created in 2022/4/15
* @description:
*/
@Controller
public class ProducerController {
@Autowired
KafkaTemplate<String,String> kafkaTemplate ;
@RequestMapping("/producer")
public String data(String msg){
kafkaTemplate.send("first",msg);
System.out.println("生产者收到页面请求:"+msg);
return "OK" ;
}
}
三、消费者代码
package com.myself.springboot.springbootkafka.controller;
import org.springframework.context.annotation.Configuration;
import org.springframework.kafka.annotation.KafkaListener;
/**
* @author :jizhibing
* @date :Created in 2022/4/15
* @description:
*/
@Configuration
public class KafkaConsumer {
@KafkaListener(topics = "first")
public void consumerTopic(String msg){
System.out.println("消费者消费消息:"+msg);
}
}
四、application.properties
#kafka服务器信息
spring.kafka.bootstrap-servers=localhost:9092
# key 序列号
spring.kafka.producer.key-serializer=org.apache.kafka.common.serialization.StringSerializer
# value 序列号
spring.kafka.producer.value-serializer=org.apache.kafka.common.serialization.StringSerializer
# key 反序列号
spring.kafka.consumer.key-deserializer=org.apache.kafka.common.serialization.StringDeserializer
# value 反序列号
spring.kafka.consumer.value-deserializer=org.apache.kafka.common.serialization.StringDeserializer
spring.kafka.consumer.group-id=test
五、结果展示
本文转载自: https://blog.csdn.net/a6470831/article/details/124204087
版权归原作者 机智兵 所有, 如有侵权,请联系我们删除。
版权归原作者 机智兵 所有, 如有侵权,请联系我们删除。