使用springboot将数据从文件发送到kafka主题



我想使用kafka和springboot从文件中实时发送数据,我已经测试了这段代码,使用postman以JSON格式发送数据到kafka主题。

    @RestController
public class OrderController {
    @Autowired
    private KafkaProducerService kafkaProducerService;
    @PostMapping("/post")
    public void order(@RequestBody Order order) {
        kafkaProducerService.send(order);
    }
}

在大多数情况下,我想使用springboot从文件发送数据。知道怎么做吗?

这对我很有帮助:

.propretiespom.xml中进行适当的配置后,我可以在我的服务层中使用它。

private final static String TOPIC = "TOPIC";
@Autowired
private KafkaTemplate<String, Sting> kafkaTemplate;
public void someMethod(){
    
    //... code
    
    kafkaTemplate.send(TOPIC, obj.toString());
}

我需要发送字符串,它工作得很好,希望它有帮助。我还制定了调度方法,以编程方式在Kafka队列上发送。

你还应该添加到你的pom

<dependency>
    <groupId>org.springframework.kafka</groupId>
    <artifactId>spring-kafka</artifactId>
</dependency>

这就是我需要的。properties

# Required connection configs for Kafka producer, consumer, and admin
spring.kafka.properties.sasl.mechanism=PLAIN
spring.kafka.properties.bootstrap.servers=server
spring.kafka.properties.sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule   required username=''   password='';
spring.kafka.properties.security.protocol=SASL_SSL
#Serialization
spring.kafka.producer.key-serializer=org.apache.kafka.common.serialization.StringSerializer
spring.kafka.producer.value-serializer=org.apache.kafka.common.serialization.StringSerializer
# Best practice for higher availability in Apache Kafka clients prior to 3.0
spring.kafka.properties.session.timeout.ms=45000

如果有帮助或需要其他东西,请告诉我

相关内容

  • 没有找到相关文章

最新更新