クラス JacksonJsonRedisSerializer< T >

java.lang.ObjectSE
org.springframework.data.redis.serializer.JacksonJsonRedisSerializer<T>
実装済みのインターフェース一覧:
RedisSerializer<T>

public class JacksonJsonRedisSerializer<T> extends ObjectSE implements RedisSerializer<T>
Jackson 3 および Jackson 3 データバインド ObjectMapper を使用して JSON を読み書きできる RedisSerializer

このシリアライザーは、型指定された Bean または型指定されていない HashMapSE インスタンスにバインドするために使用できます。: Null オブジェクトは空の配列として直列化され、その逆も同様です。

JSON の読み取りと書き込みは、それぞれ JacksonObjectReader を構成することでカスタマイズできます JacksonObjectWriter

導入:
4.0
作成者:
Christoph Strobl, Thomas Darimont, Mark Paluch
  • コンストラクターの詳細

    • JacksonJsonRedisSerializer

      public JacksonJsonRedisSerializer(ClassSE<T> type)
      指定されたターゲット ClassSE に対して新しい JacksonJsonRedisSerializer を作成します。
      パラメーター:
      type - null であってはなりません。
    • JacksonJsonRedisSerializer

      public JacksonJsonRedisSerializer(tools.jackson.databind.JavaType javaType)
      指定されたターゲット JavaType に対して新しい JacksonJsonRedisSerializer を作成します。
      パラメーター:
      javaType - null であってはなりません。
    • JacksonJsonRedisSerializer

      public JacksonJsonRedisSerializer(tools.jackson.databind.ObjectMapper mapper, ClassSE<T> type)
      指定されたターゲット ClassSE に対して新しい JacksonJsonRedisSerializer を作成します。
      パラメーター:
      mapper - null であってはなりません。
      type - null であってはなりません。
    • JacksonJsonRedisSerializer

      public JacksonJsonRedisSerializer(tools.jackson.databind.ObjectMapper mapper, tools.jackson.databind.JavaType javaType)
      指定されたターゲット JavaType に対して新しい JacksonJsonRedisSerializer を作成します。
      パラメーター:
      mapper - null であってはなりません。
      javaType - null であってはなりません。
    • JacksonJsonRedisSerializer

      public JacksonJsonRedisSerializer(tools.jackson.databind.ObjectMapper mapper, tools.jackson.databind.JavaType javaType, JacksonObjectReader reader, JacksonObjectWriter writer)
      指定されたターゲット JavaType に対して新しい JacksonJsonRedisSerializer を作成します。
      パラメーター:
      mapper - null であってはなりません。
      javaType - null であってはなりません。
      reader - ObjectMapper を使用してオブジェクトを読み取る JacksonObjectReader 関数。
      writer - ObjectMapper を使用してオブジェクトを書き込む JacksonObjectWriter 関数。
  • メソッドの詳細

    • serialize

      public byte[] serialize(@Nullable T value) throws SerializationException
      インターフェースからコピーされた説明: RedisSerializer
      指定されたオブジェクトをバイナリデータに直列化します。
      次で指定:
      インターフェース RedisSerializer<T>serialize 
      パラメーター:
      value - 直列化するオブジェクト。null にすることができます。
      戻り値:
      同等のバイナリデータ。空の配列にすることはできますが、null にすることはできません。
      例外:
      SerializationException
    • deserialize

      public @Nullable T deserialize(byte @Nullable [] bytes) throws SerializationException
      インターフェースからコピーされた説明: RedisSerializer
      指定されたバイナリデータからオブジェクトを逆直列化します。
      次で指定:
      インターフェース RedisSerializer<T>deserialize 
      パラメーター:
      bytes - オブジェクトのバイナリ表現。null にすることができます。
      戻り値:
      同等のオブジェクトインスタンス。null にすることができます。
      例外:
      SerializationException
    • getJavaType

      protected tools.jackson.databind.JavaType getJavaType(ClassSE<?> clazz)
      特定のクラスの Jackson JavaType を返します。

      デフォルトの実装は TypeFactory.constructType(java.lang.reflect.Type) を返しますが、これはサブクラスでオーバーライドして、カスタムのジェネリクスコレクション処理を可能にすることができます。例:

      protected JavaType getJavaType(Class<?> clazz) {
              if (List.class.isAssignableFrom(clazz)) {
                      return TypeFactory.defaultInstance().constructCollectionType(ArrayList.class, MyBean.class);
              } else {
                      return super.getJavaType(clazz);
              }
      }
      
      パラメーター:
      clazz - java 型を返すクラス
      戻り値:
      java 型