クラス JsonSerializer<T>

java.lang.ObjectSE
org.springframework.kafka.support.serializer.JsonSerializer<T>
型パラメーター:
T - メッセージを表すエンティティのクラス
実装されたすべてのインターフェース:
CloseableSEAutoCloseableSEorg.apache.kafka.common.serialization.Serializer<T>

public class JsonSerializer<T> extends ObjectSE implements org.apache.kafka.common.serialization.Serializer<T>
Java オブジェクトを JSON として Kafka に送信するための汎用 Serializer

IMPORTANT: 構成は、プロパティ setter を使用して、または configure(Map, boolean) を介して完全に行う必要があり、混合ではありません。setter が呼び出された場合、configure(Map, boolean) はノーオペレーションになります。

作成者:
Igor Stepanov, Artem Bilan, Gary Russell, Elliot Kennedy, Wang Zhiyang
  • フィールドの詳細

    • ADD_TYPE_INFO_HEADERS

      public static final StringSE ADD_TYPE_INFO_HEADERS
      型ヘッダーの追加を無効にするための Kafka 構成プロパティ。
      関連事項:
    • TYPE_MAPPINGS

      public static final StringSE TYPE_MAPPINGS
      型マッパーに型マッピングを追加するための Kafka 構成プロパティ: 'foo:com.Foo、bar:com.Bar'。
      関連事項:
    • objectMapper

      protected final com.fasterxml.jackson.databind.ObjectMapper objectMapper
    • addTypeInfo

      protected boolean addTypeInfo
    • typeMapper

      protected Jackson2JavaTypeMapper typeMapper
  • コンストラクターの詳細

    • JsonSerializer

      public JsonSerializer()
    • JsonSerializer

      public JsonSerializer(com.fasterxml.jackson.core.type.TypeReference<? super T> targetType)
    • JsonSerializer

      public JsonSerializer(com.fasterxml.jackson.databind.ObjectMapper objectMapper)
    • JsonSerializer

      public JsonSerializer(com.fasterxml.jackson.core.type.TypeReference<? super T> targetType, com.fasterxml.jackson.databind.ObjectMapper objectMapper)
    • JsonSerializer

      public JsonSerializer(com.fasterxml.jackson.databind.JavaType targetType, com.fasterxml.jackson.databind.ObjectMapper objectMapper)
  • メソッドの詳細

    • isAddTypeInfo

      public boolean isAddTypeInfo()
    • setAddTypeInfo

      public void setAddTypeInfo(boolean addTypeInfo)
      型情報ヘッダーの追加を無効にするには、false に設定します。
      パラメーター:
      addTypeInfo - ヘッダーを追加する場合は true。
      導入:
      2.1
    • getTypeMapper

      public Jackson2JavaTypeMapper getTypeMapper()
    • setTypeMapper

      public void setTypeMapper(Jackson2JavaTypeMapper typeMapper)
      カスタマイズされた型マッパーを設定します。
      パラメーター:
      typeMapper - 型マッパー。
      導入:
      2.1
    • setUseTypeMapperForKey

      public void setUseTypeMapperForKey(boolean isKey)
      キー型ヘッダーを使用するようにデフォルトの Jackson2JavaTypeMapper を構成します。
      パラメーター:
      isKey - true の場合、キー型 ヘッダーを使用する
      導入:
      2.1.3
    • configure

      public void configure(MapSE<StringSE,?> configs, boolean isKey)
      次で指定:
      インターフェース org.apache.kafka.common.serialization.Serializer<T>configure 
    • createMappings

      protected static MapSE<StringSE,ClassSE<?>> createMappings(StringSE mappings)
    • serialize

      @Nullable public byte[] serialize(StringSE topic, org.apache.kafka.common.header.Headers headers, @Nullable T data)
      次で指定:
      インターフェース org.apache.kafka.common.serialization.Serializer<T>serialize 
    • serialize

      @Nullable public byte[] serialize(StringSE topic, @Nullable T data)
      次で指定:
      インターフェース org.apache.kafka.common.serialization.Serializer<T>serialize 
    • close

      public void close()
      次で指定:
      インターフェース AutoCloseableSEclose 
      次で指定:
      インターフェース CloseableSEclose 
      次で指定:
      インターフェース org.apache.kafka.common.serialization.Serializer<T>close 
    • copyWithType

      public <X> JsonSerializer<X> copyWithType(ClassSE<? super X> newTargetType)
      新しいターゲット型参照が使用されることを除いて、このシリアライザーを同じ構成でコピーします。
      型パラメーター:
      X - 新しい直列化ソース型
      パラメーター:
      newTargetType - null ではなく、直列化のために強制された型参照
      戻り値:
      型が変更されたシリアライザーの新しいインスタンス
      導入:
      2.6
    • copyWithType

      public <X> JsonSerializer<X> copyWithType(com.fasterxml.jackson.core.type.TypeReference<? super X> newTargetType)
      新しいターゲット型参照が使用されることを除いて、このシリアライザーを同じ構成でコピーします。
      型パラメーター:
      X - 新しい直列化ソース型
      パラメーター:
      newTargetType - null ではなく、直列化のために強制された型参照
      戻り値:
      型が変更されたシリアライザーの新しいインスタンス
      導入:
      2.6
    • copyWithType

      public <X> JsonSerializer<X> copyWithType(com.fasterxml.jackson.databind.JavaType newTargetType)
      新しいターゲット java 型が使用されることを除いて、同じ構成でこのシリアライザーをコピーします。
      型パラメーター:
      X - 新しい直列化ソース型
      パラメーター:
      newTargetType - java 型は直列化を強制され、null ではありません
      戻り値:
      型が変更されたシリアライザーの新しいインスタンス
      導入:
      2.6
    • forKeys

      public JsonSerializer<T> forKeys()
      キーを直列化するためにこのシリアライザーを指定します(デフォルトは値です)。デフォルトの型マッパーが使用されている場合にのみ適用されます。
      戻り値:
      シリアライザー。
      導入:
      2.3
      関連事項:
    • noTypeInfo

      public JsonSerializer<T> noTypeInfo()
      型情報ヘッダーを含めないでください。
      戻り値:
      シリアライザー。
      導入:
      2.3
      関連事項:
    • typeMapper

      public JsonSerializer<T> typeMapper(Jackson2JavaTypeMapper mapper)
      付属の Jackson2JavaTypeMapper を使用してください。
      パラメーター:
      mapper - マッパー。
      戻り値:
      シリアライザー。
      導入:
      2.3
      関連事項: