编程语言
首页 > 编程语言> > java – 将ObjectMapper注入Spring Kafka serialiser / deserialiser

java – 将ObjectMapper注入Spring Kafka serialiser / deserialiser

作者:互联网

我正在使用Spring Kafka 1.1.2-RELEASE和Spring Boot 1.5.0 RC,我已经配置了一个自定义值serialiser / deserialiser类,扩展了org.springframework.kafka.support.serializer.JsonSerializer / org.springframework.kafka.support. serializer.JsonDeserializer.这些类确实使用了Jackson ObjectMapper,它可以通过构造函数提供.

是否有可能从我的Spring上下文中注入ObjectMapper?我已经配置了一个ObjectMapper,我想在serialiser / deserialiser中重用它.

最佳答案:

您可以将JsonSerializer和JsonDeserializer配置为@Beans.
向它们注入所需的ObjectMapper.并在DefaultKafkaProducerFactory和DefaultKafkaConsumerFactory bean定义中使用这些bean:

    @Bean
    public ProducerFactory<Integer, String> producerFactory() {
        DefaultKafkaProducerFactory<Integer, String> producerFactory = 
                new DefaultKafkaProducerFactory<>(producerConfigs());
        producerFactory.setValueSerializer(jsonSerializer());
        return producerFactory;
    }

标签:java,spring,spring-boot-2,spring-kafka
来源: https://codeday.me/bug/20190516/1114387.html