クラス JacksonCodecSupport<T extends tools.jackson.databind.ObjectMapper>

java.lang.ObjectSE
org.springframework.http.codec.JacksonCodecSupport<T>
型パラメーター:
T - ObjectMapper の型
既知の直属サブクラス
AbstractJacksonDecoder, AbstractJacksonEncoder

public abstract class JacksonCodecSupport<T extends tools.jackson.databind.ObjectMapper> extends ObjectSE
Jackson 3.x エンコードおよびデコードのサポートメソッドを提供する基本クラス。
導入:
7.0
作成者:
Sebastien Deleuze
  • フィールドの詳細

    • JSON_VIEW_HINT

      public static final StringSE JSON_VIEW_HINT
      ClassSE であることが期待される値でエンコードまたはデコードするための「JSON ビュー」を指定するためのヒントのキー。
    • FILTER_PROVIDER_HINT

      public static final StringSE FILTER_PROVIDER_HINT
      FilterProvider を指定するためのヒントのキー。
    • logger

      protected final org.apache.commons.logging.Log logger
    • mapperRegistrations

      protected @Nullable MapSE<ClassSE<?>, MapSE<MimeType, T extends tools.jackson.databind.ObjectMapper>> mapperRegistrations
  • コンストラクターの詳細

    • JacksonCodecSupport

      protected JacksonCodecSupport(tools.jackson.databind.cfg.MapperBuilder<T,?> builder, MimeType... mimeTypes)
      MapperBuilder.findModules(ClassLoader) と MimeType によって見つかった JacksonModule でカスタマイズされた、提供された builder を使用して新しいインスタンスを構築します。
    • JacksonCodecSupport

      protected JacksonCodecSupport(T mapper, MimeType... mimeTypes)
      MapperBuilder.findModules(ClassLoader) と MimeType によって見つかった JacksonModule でカスタマイズされた、提供された ObjectMapper を使用して新しいインスタンスを構築します。
  • メソッドの詳細

    • getMapper

      public T getMapper()
      configured のデフォルトマッパーを返します。
    • registerMappersForType

      public void registerMappersForType(ClassSE<?> clazz, ConsumerSE<MapSE<MimeType,T>> registrar)
      指定された ClassSE に使用する ObjectMapper インスタンスを設定します。これは、default の ObjectMapper から逸脱させたい場合や、ObjectMapper を MediaType によって変化させたい場合に便利です。

      注意 : このメソッドを使用すると、特定のクラスでデフォルトの ObjectMapper およびサポートされている MimeTypes の使用が事実上オフになります。ここで構成されたマッピングは、特定のクラスでサポートする必要があるすべての MediaType を include に設定することが重要です。

      パラメーター:
      clazz - ObjectMapper インスタンスを登録するオブジェクトの型
      registrar - 指定されたクラスの MediaType と ObjectMapper の関連付けを設定または更新するコンシューマー
    • getMappersForType

      public @Nullable MapSE<MimeType,T> getMappersForType(ClassSE<?> clazz)
      指定されたクラスの ObjectMapper 登録があれば、それを返します。
      パラメーター:
      clazz - 登録を検索するクラス
      戻り値:
      MediaType から ObjectMapper への登録が登録されているマップ、または特定のクラスの登録がない場合は空。
    • getMapperRegistrations

      protected MapSE<ClassSE<?>, MapSE<MimeType,T>> getMapperRegistrations()
    • getMimeTypes

      protected ListSE<MimeType> getMimeTypes()
      サブクラスはこれを「デコード可能」または「エンコード可能」な MIME 型として公開する必要があります。
    • getMimeTypes

      protected ListSE<MimeType> getMimeTypes(ResolvableType elementType)
    • getMediaTypesForProblemDetail

      protected ListSE<MimeType> getMediaTypesForProblemDetail()
      ProblemDetail でサポートされているメディア型を返します。サブクラスでオーバーライドされない限り、デフォルトでは空のリストです。
    • supportsMimeType

      protected boolean supportsMimeType(@Nullable MimeType mimeType)
    • getJavaType

      protected tools.jackson.databind.JavaType getJavaType(TypeSE type, @Nullable ClassSE<?> contextClass)
    • getHints

      protected MapSE<StringSE,ObjectSE> getHints(ResolvableType resolvableType)
    • getParameter

      protected @Nullable MethodParameter getParameter(ResolvableType type)
    • getAnnotation

      protected abstract <A extends AnnotationSE> @Nullable A getAnnotation(MethodParameter parameter, ClassSE<A> annotType)
    • selectMapper

      protected @Nullable T selectMapper(ResolvableType targetType, @Nullable MimeType targetMimeType)
      特定のクラスの処理が registerMappersForType(Class, Consumer) を介してカスタマイズされている場合は、使用する ObjectMapper を選択します。メインの ObjectMapper または別の ObjectMapper のいずれかです。