クラス JacksonJsonRedisSerializer< T >

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

public class JacksonJsonRedisSerializer<T> extends ObjectSE implements RedisSerializer<T>
RedisSerializer は、Jackson 3、Jackson 3 データバインド、ObjectMapper を使用して JSON の読み書きが可能です。

このシリアライザーは、型指定された 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(JavaType javaType)
      指定されたターゲット JavaType に対して新しい JacksonJsonRedisSerializer を作成します。
      パラメーター:
      javaType - null であってはなりません。
    • JacksonJsonRedisSerializer

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

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

      public JacksonJsonRedisSerializer(ObjectMapper mapper, 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 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 型