gpt4 book ai didi

java - Spring Kafka JsonSerializer 用法

转载 作者:搜寻专家 更新时间:2023-11-01 02:21:31 28 4
gpt4 key购买 nike

我正在尝试按照此处的说明进行操作:

http://docs.spring.io/spring-kafka/docs/1.1.1.RELEASE/reference/htmlsingle/#_serialization_deserialization_and_message_conversion

设置一个 KafkaTemplate,它可以序列化和发送我拥有的一些简单的 Java POJO。但我发现文档含糊不清,尤其是这一部分:

For this purpose Spring for Apache Kafka also provides JsonSerializer/JsonDeserializer implementations based on the Jackson JSON processor. When JsonSerializer is pretty simple and just lets to write any Java object as a JSON byte[]

...

Although Serializer/Deserializer API is pretty simple and flexible from the low-level Kafka Consumer and Producer perspective, it is not enough on the Messaging level, where KafkaTemplate and @KafkaListener are present.

...

The MessageConverter can be injected into KafkaTemplate instance directly and via AbstractKafkaListenerContainerFactory bean definition for the @KafkaListener.containerFactory() property

所以我的问题是:

  • 我的 KafkaTemplate 的类型是什么?是KafkaTemplate<String, Object> ?或者是KafkaTemplate<String, String>
  • 我的是什么序列化类?是StringSerializer , 或者是 JsonSerializer
  • 做我用 kafkaTemplate.setMessageConverter(new StringJsonMessageConverter())在创建我的 KafkaTemplate bean 时?

如果这些是愚蠢的问题,我深表歉意 - 我正在尝试了解设置它的正确方法,而不是“破解它直到它有点工作”。

最佳答案

  1. <String, Object>

  2. JsonSerializer

  3. 消息转换器仅在使用采用 Message<?> 的发送时使用并带有 JsonSerializer你应该使用默认的。

关于java - Spring Kafka JsonSerializer 用法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40360558/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com