1.导包
<!-- kafkfa -->
<dependency>
<groupId>org.springframework.kafka</groupId>
<artifactId>spring-kafka</artifactId>
</dependency>
<dependency>
<groupId>org.apache.kafka</groupId>
<artifactId>kafka-clients</artifactId>
</dependency>
2.配置
spring:
kafka:
bootstrap-servers: 111.111.111.111:9092
consumer: # 消费方的kafka
group-id: article-group
key-deserializer: org.apache.kafka.common.serialization.StringDeserializer
value-deserializer: org.apache.kafka.common.serialization.StringDeserializer
producer: #服务方的kafka
retries: 10
key-serializer: org.apache.kafka.common.serialization.StringSerializer
value-serializer: org.apache.kafka.common.serialization.StringSerializer
3.启动类
@SpringBootApplication
public class KafkaDemoApplication {
public static void main(String[] args) {
SpringApplication.run(KafkaDemoApplication.class, args);
}
}
4.配置文件 (无)
5.测试及使用
发送消息
@Autowired
KafkaTemplate<String,String> kafkaTemplate;
@GetMapping("/{topic}/{msg}")
public String send(@PathVariable String topic,@PathVariable String msg){
kafkaTemplate.send("tang",msg);
return "发送成功";
}
收消息
@Component
public class HelloListener {
@KafkaListener(topics = {"tang"})
public void listener(ConsumerRecord<?, ?> record) {
System.out.println(record.key() + "===========" + record.value());
}
}