Kafka 反序列化嵌套泛型类型

Ran*_*ala 5 java jackson apache-kafka json-deserialization

给定一个这样的类

public class Message<T> implements Serializable {
  final String correlationId;
  final LocalDateTime timestamp;
  final T payload
}
Run Code Online (Sandbox Code Playgroud)

如何实现一个可以处理嵌套泛型类型的自定义 Kafka 反序列化器?

序列化应该非常简单,因为类型信息将可用。

但是反序列化时没有类型信息如何处理?

ps:我正在使用 jackson 进行序列化/反序列化。

Ran*_*ala 5

通过让杰克逊在序列化时包含类型信息来解决。

public class Message<T> implements Serializable {
  final String correlationId;
  final LocalDateTime timestamp;

  @JsonTypeInfo(use=JsonTypeInfo.Id.CLASS, include=JsonTypeInfo.As.PROPERTY, property="@class")
  final T payload
}
Run Code Online (Sandbox Code Playgroud)