Spring / Kafka-配置属性优先级-application.properties,bean(ProducerFactory)

时间:2019-11-28 04:12:01

标签: apache-kafka spring-kafka

Kafka配置属性:

我可以在
中拥有相同的属性“键”(也许还有不同的“值”)吗? (1)application.properties,
(2)bean(ProducerFactory / ProducerConfig)和

如果是,“最后赢家”是谁?

P.S是的,我知道,测试一下!但是在SO上有这个问题/答案也很方便。

编辑:
示例:
(1)spring.kafka.producer.properties.enable.idempotence = true
(2)props.put(ProducerConfig.ENABLE_IDEMPOTENCE_CONFIG,“ false”);
道具定义为:

@Configuration
public class KafkaProducerConfiguration {

    @Bean
    public ProducerFactory<Object, Object> producerFactory() {
        Map<String, Object> props = new HashMap<>();

1 个答案:

答案 0 :(得分:0)

引导属性(1)仅在引导为您自动配置生产者工厂时使用。由于您正在定义自己的生产者工厂@Bean(2),因此禁用了引导程序,并且忽略了这些属性。

如果您要使用Boot application.properties,只需删除producerFactory @Bean,然后让Boot为您配置生产者工厂。

我不知道config/producer.properties(3)是什么。