クラス GenericJackson2JsonRedisSerializer

java.lang.ObjectSE
org.springframework.data.redis.serializer.GenericJackson2JsonRedisSerializer
実装されたすべてのインターフェース:
RedisSerializer<ObjectSE>

public class GenericJackson2JsonRedisSerializer extends ObjectSE implements RedisSerializer<ObjectSE>
動的型付けを使用して objectsSE と JSON をマッピングする、汎用 Jackson 2 ベースの RedisSerializer

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

導入:
1.6
作成者:
Christoph Strobl, Mark Paluch, Mao Shuai, John Blum, Anne Lee
関連事項:
  • コンストラクターの詳細

    • GenericJackson2JsonRedisSerializer

      public GenericJackson2JsonRedisSerializer()
      デフォルトの入力用に構成された ObjectMapper で初期化された GenericJackson2JsonRedisSerializer を作成します。
    • GenericJackson2JsonRedisSerializer

      public GenericJackson2JsonRedisSerializer(@Nullable StringSE typeHintPropertyName)
      指定された nameSE を使用して、デフォルトの型指定用に構成された ObjectMapper で初期化された GenericJackson2JsonRedisSerializer を作成します。

      nameSE が空または null の場合、JsonTypeInfo.Id.CLASS が使用されます。

      パラメーター:
      typeHintPropertyName - 型情報を保持する JSON プロパティの nameSE。null にすることもできます。
      関連事項:
      • ObjectMapper.activateDefaultTypingAsProperty(PolymorphicTypeValidator, DefaultTyping, String)
      • ObjectMapper.activateDefaultTyping(PolymorphicTypeValidator, DefaultTyping, As)
    • GenericJackson2JsonRedisSerializer

      public GenericJackson2JsonRedisSerializer(@Nullable StringSE typeHintPropertyName, JacksonObjectReader reader, JacksonObjectWriter writer)
      JSON として直列化解除 / 直列化された ObjectsSE の読み取り / 書き込みに使用される、指定された nameSE と、指定された必須の JacksonObjectReader および JacksonObjectWriter を使用して、デフォルトの型指定用に構成された ObjectMapper で初期化された GenericJackson2JsonRedisSerializer を作成します。

      nameSE が空または null の場合、JsonTypeInfo.Id.CLASS が使用されます。

      パラメーター:
      typeHintPropertyName - 型情報を保持する JSON プロパティの nameSE。null にすることもできます。
      reader - ObjectMapper を使用してオブジェクトを読み取る JacksonObjectReader 関数。
      writer - ObjectMapper を使用してオブジェクトを書き込むための JacksonObjectWriter 関数。
      導入:
      3.0
      関連事項:
      • ObjectMapper.activateDefaultTypingAsProperty(PolymorphicTypeValidator, DefaultTyping, String)
      • ObjectMapper.activateDefaultTyping(PolymorphicTypeValidator, DefaultTyping, As)
    • GenericJackson2JsonRedisSerializer

      public GenericJackson2JsonRedisSerializer(com.fasterxml.jackson.databind.ObjectMapper mapper)
      カスタム構成の ObjectMapper を設定することは、JSON 直列化プロセスをさらに制御する 1 つの方法です。例: 特定の型のカスタムシリアライザーを提供する拡張 SerializerFactory を構成できます。
      パラメーター:
      mapper - null であってはなりません。
    • GenericJackson2JsonRedisSerializer

      public GenericJackson2JsonRedisSerializer(com.fasterxml.jackson.databind.ObjectMapper mapper, JacksonObjectReader reader, JacksonObjectWriter writer)
      カスタム構成の ObjectMapper を設定することは、JSON 直列化プロセスをさらに制御する 1 つの方法です。例: 特定の型のカスタムシリアライザーを提供する拡張 SerializerFactory を構成できます。
      パラメーター:
      mapper - null であってはなりません。
      reader - ObjectMapper を使用してオブジェクトを読み取る JacksonObjectReader 関数。
      writer - ObjectMapper を使用してオブジェクトを書き込む JacksonObjectWriter 関数。
      導入:
      3.0
  • メソッドの詳細

    • builder

      GenericJackson2JsonRedisSerializer の構築と構成に使用される Builder を返すファクトリメソッド。
      戻り値:
      新しい GenericJackson2JsonRedisSerializer.GenericJackson2JsonRedisSerializerBuilder
      導入:
      3.3.1
    • registerNullValueSerializer

      public static void registerNullValueSerializer(com.fasterxml.jackson.databind.ObjectMapper objectMapper, @Nullable StringSE typeHintPropertyName)
      オプションの typeHintPropertyName を使用して、指定された ObjectMapper に GenericJackson2JsonRedisSerializer.NullValueSerializer を登録します。このメソッドは、外部 ObjectMapper を提供することによって GenericJackson2JsonRedisSerializer をカスタマイズするコードによって呼び出される必要があります。
      パラメーター:
      objectMapper - カスタマイズするオブジェクトマッパー。
      typeHintPropertyName - type プロパティの名前。null/ 空の場合、デフォルトは @class です。
      導入:
      2.2
    • getObjectMapper

      protected com.fasterxml.jackson.databind.ObjectMapper getObjectMapper()
      objectsSE を JSON として逆直列化するためにこの GenericJackson2JsonRedisSerializer によって内部的に使用される構成された ObjectMapper を取得します。
      戻り値:
      構成された ObjectMapper
    • serialize

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

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

      @Nullable public <T> T deserialize(@Nullable byte[] source, ClassSE<T> type) throws SerializationException
      JSON を含むバイト配列を、指定された必須の typeSEObjectSE として逆直列化しました。
      パラメーター:
      source - 逆直列化する JSON を含むバイトの配列。null にすることもできます。
      type - JSON が逆直列化される typeSE または ObjectSE。null であってはなりません。
      戻り値:
      空のソースの場合は null、または JSON を含むバイト配列から逆直列化された指定された typeSEObjectSE
      例外:
      IllegalArgumentExceptionSE - 指定された typeSE が null の場合。
      SerializationException - バイト配列を指定された typeSE のインスタンスとして逆直列化できない場合
    • configure

      public GenericJackson2JsonRedisSerializer configure(ConsumerSE<com.fasterxml.jackson.databind.ObjectMapper> objectMapperConfigurer)
      この GenericJackson2JsonRedisSerializer によって作成された内部 Jackson ObjectMapper を構成およびカスタマイズするために使用され、objectsSE を JSON として逆直列化するために使用されるビルダーメソッド。
      パラメーター:
      objectMapperConfigurer - ConsumerSE は、内部 ObjectMapper の構成とカスタマイズに使用されます。null であってはなりません。
      戻り値:
      この GenericJackson2JsonRedisSerializer
      例外:
      IllegalArgumentExceptionSE - 内部 ObjectMapper の構成とカスタマイズに使用される ConsumerSE が null の場合。
      導入:
      3.1.5
    • resolveType

      protected com.fasterxml.jackson.databind.JavaType resolveType(byte[] source, ClassSE<?> type) throws IOExceptionSE
      例外:
      IOExceptionSE