クラス AbstractJacksonHttpMessageConverter<T extends tools.jackson.databind.ObjectMapper>
java.lang.ObjectSE
org.springframework.http.converter.AbstractHttpMessageConverter<ObjectSE>
org.springframework.http.converter.AbstractSmartHttpMessageConverter<ObjectSE>
org.springframework.http.converter.AbstractJacksonHttpMessageConverter<T>
- 型パラメーター:
T-ObjectMapperの型
- 実装されているすべてのインターフェース:
HttpMessageConverter<ObjectSE>, SmartHttpMessageConverter<ObjectSE>
- 既知の直属サブクラス
JacksonCborHttpMessageConverter, JacksonJsonHttpMessageConverter, JacksonSmileHttpMessageConverter, JacksonXmlHttpMessageConverter, JacksonYamlHttpMessageConverter
public abstract class AbstractJacksonHttpMessageConverter<T extends tools.jackson.databind.ObjectMapper>
extends AbstractSmartHttpMessageConverter<ObjectSE>
Jackson ベースおよびコンテンツ型に依存しない
HttpMessageConverter 実装の抽象基本クラス。次のヒントエントリがサポートされています。
com.fasterxml.jackson.annotation.JsonViewキーと、JSON ビューのクラス名を値として持つ JSON ビュー。tools.jackson.databind.ser.FilterProviderキーとフィルタープロバイダークラス名を値として持つフィルタープロバイダー。
- 導入:
- 7.0
- 作成者:
- Sebastien Deleuze
- 関連事項:
フィールドのサマリー
フィールドクラス AbstractHttpMessageConverter から継承されたフィールド
loggerコンストラクターの概要
コンストラクター修飾子コンストラクター説明protectedAbstractJacksonHttpMessageConverter(T mapper) 提供されたObjectMapperを使用して新しいインスタンスを構築します。protectedAbstractJacksonHttpMessageConverter(tools.jackson.databind.cfg.MapperBuilder<T, ?> builder, MediaType supportedMediaType) 提供されたbuilderをMapperBuilder.findModules(ClassLoader)とMediaTypeによって見つかったJacksonModuleでカスタマイズして、新しいインスタンスを構築します。protectedAbstractJacksonHttpMessageConverter(tools.jackson.databind.cfg.MapperBuilder<T, ?> builder, MediaType... supportedMediaTypes) MapperBuilder.findModules(ClassLoader)とMediaTypeによって見つかったJacksonModuleでカスタマイズされた、提供されたbuilderを使用して新しいインスタンスを構築します。protectedAbstractJacksonHttpMessageConverter(T mapper, MediaType supportedMediaType) 提供されたObjectMapperとMediaTypeを使用して新しいインスタンスを構築します。protectedAbstractJacksonHttpMessageConverter(T mapper, MediaType... supportedMediaTypes) 提供されたObjectMapperおよびMediaTypeを使用して新しいインスタンスを構築します。メソッドのサマリー
修飾子と型メソッド説明booleancanRead(ResolvableType type, @Nullable MediaType mediaType) 指定された型がこのコンバーターで読み取れるかどうかを示します。booleanprotected tools.jackson.databind.ObjectReadercustomizeReader(tools.jackson.databind.ObjectReader reader, tools.jackson.databind.JavaType javaType) サブクラスはこのメソッドを使用して、値の読み取りに使用されるObjectReaderをカスタマイズできます。protected tools.jackson.databind.ObjectWritercustomizeWriter(tools.jackson.databind.ObjectWriter writer, @Nullable tools.jackson.databind.JavaType javaType, @Nullable MediaType contentType) サブクラスはこのメソッドを使用して、値の書き込みに使用されるObjectWriterをカスタマイズできます。protected CharsetSEgetCharset(@Nullable MediaType contentType) JSON 入力に使用する文字セットを決定します。protected tools.jackson.databind.JavaTypegetJavaType(TypeSE type, @Nullable ClassSE<?> contextClass) 指定された型とコンテキストクラスの JacksonJavaTypeを返します。protected tools.jackson.core.JsonEncodinggetJsonEncoding(@Nullable MediaType contentType) 指定されたコンテンツ型に使用する JSON エンコーディングを決定します。使用中のメインObjectMapperを返却してください。getMappersForType(ClassSE<?> clazz) 指定されたクラスの ObjectMapper 登録があれば、それを返します。ProblemDetailでサポートされているメディア型を返します。getSupportedMediaTypes(ClassSE<?> clazz) 指定されたクラスについて、このコンバーターでサポートされているメディア型のリストを返します。read(ResolvableType type, HttpInputMessage inputMessage, @Nullable MapSE<StringSE, ObjectSE> hints) 指定された入力メッセージから指定された型のオブジェクトを読み取り、それを返します。protected ObjectSEreadInternal(ClassSE<?> clazz, HttpInputMessage inputMessage) 実際のオブジェクトを読み取る抽象テンプレートメソッド。voidregisterMappersForType(ClassSE<?> clazz, ConsumerSE<MapSE<MediaType, T>> registrar) 指定されたClassSE に使用するObjectMapperインスタンスを構成します。voidsetSupportedMediaTypes(ListSE<MediaType> supportedMediaTypes) このコンバーターによってサポートされるMediaTypeオブジェクトのリストを設定します。protected booleanこのメッセージコンバーターが指定されたオブジェクトを複数回書き込むことができるかどうかを示します。protected voidwriteInternal(ObjectSE object, ResolvableType resolvableType, HttpOutputMessage outputMessage, @Nullable MapSE<StringSE, ObjectSE> hints) 実際の本文を書き込む抽象テンプレートメソッド。protected voidwritePrefix(tools.jackson.core.JsonGenerator generator, ObjectSE object) メインコンテンツの前にプレフィックスを書きます。protected voidwriteSuffix(tools.jackson.core.JsonGenerator generator, ObjectSE object) メインコンテンツの後にサフィックスを記述します。クラス AbstractSmartHttpMessageConverter から継承されたメソッド
canWrite, supports, write, writeInternalクラス AbstractHttpMessageConverter から継承されたメソッド
addDefaultHeaders, canRead, canRead, canWrite, getContentLength, getDefaultCharset, getDefaultContentType, getSupportedMediaTypes, read, setDefaultCharset, writeクラス ObjectSE から継承されたメソッド
clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, toString, wait, waitSE, waitSEインターフェース HttpMessageConverter から継承されたメソッド
getSupportedMediaTypesインターフェース SmartHttpMessageConverter から継承されたメソッド
canRead, read, write
フィールドの詳細
defaultMapper
コンストラクターの詳細
AbstractJacksonHttpMessageConverter
AbstractJacksonHttpMessageConverter
AbstractJacksonHttpMessageConverter
提供されたObjectMapperを使用して新しいインスタンスを構築します。AbstractJacksonHttpMessageConverter
AbstractJacksonHttpMessageConverter
メソッドの詳細
setSupportedMediaTypes
クラスからコピーされた説明:AbstractHttpMessageConverterこのコンバーターによってサポートされるMediaTypeオブジェクトのリストを設定します。- オーバーライド:
- クラス
AbstractHttpMessageConverter<ObjectSE>のsetSupportedMediaTypes
getMapper
使用中のメインObjectMapperを返却してください。registerMappersForType
指定されたClassSE に使用するObjectMapperインスタンスを設定します。これは、defaultの ObjectMapper から逸脱させたい場合や、ObjectMapperをMediaTypeによって変化させたい場合に便利です。注意 : このメソッドを使用すると、特定のクラスのデフォルトの
ObjectMapperおよびsupportedMediaTypesの使用が事実上オフになります。ここで構成されたマッピングは、特定のクラスでサポートする必要があるすべての MediaType をincludeに設定することが重要です。- パラメーター:
clazz- ObjectMapper インスタンスを登録するオブジェクトの型registrar- 指定されたクラスの MediaType と ObjectMapper の関連付けを設定または更新するコンシューマー
getMappersForType
getSupportedMediaTypes
インターフェースからコピーされた説明:HttpMessageConverter指定されたクラスについて、このコンバーターでサポートされているメディア型のリストを返します。コンバーターが特定のクラスをサポートしていない場合、またはメディア型のサブセットに対してのみサポートしている場合、リストはHttpMessageConverter.getSupportedMediaTypes()とは異なる場合があります。- パラメーター:
clazz- チェックするクラスの型- 戻り値:
- 特定のクラスでサポートされているメディア型のリスト
getMediaTypesForProblemDetail
ProblemDetailでサポートされているメディア型を返します。サブクラスでオーバーライドされない限り、デフォルトでは空のリストです。canRead
インターフェースからコピーされた説明:SmartHttpMessageConverter指定された型がこのコンバーターで読み取れるかどうかを示します。このメソッドは、ジェネリクス型に関連する追加のチェックを使用してHttpMessageConverter.canRead(Class, MediaType)と同じチェックを実行する必要があります。- 次で指定:
- インターフェース
SmartHttpMessageConverter<T extends tools.jackson.databind.ObjectMapper>のcanRead - オーバーライド:
- クラス
AbstractSmartHttpMessageConverter<ObjectSE>のcanRead - パラメーター:
type- 読みやすさをテストする (潜在的にジェネリクスな) 型。型ソースは、関連する場合、追加情報 (たとえば、関連するメソッドシグネチャー) を取得するために使用されることがあります。mediaType- 読み取るメディア型。指定されていない場合はnullにすることができます。通常、Content-Typeヘッダーの値。- 戻り値:
- 読み取り可能な場合は
true。それ以外の場合はfalse
canWrite
クラスからコピーされた説明:AbstractHttpMessageConverter- 次で指定:
- インターフェース
HttpMessageConverter<T extends tools.jackson.databind.ObjectMapper>のcanWrite - 次で指定:
- インターフェース
SmartHttpMessageConverter<T extends tools.jackson.databind.ObjectMapper>のcanWrite - オーバーライド:
- クラス
AbstractHttpMessageConverter<ObjectSE>のcanWrite - パラメーター:
clazz- 書き込み可能性をテストするクラスmediaType- 書き込むメディア型(指定しない場合はnullにすることができます); 通常、Acceptヘッダーの値。- 戻り値:
- 書き込み可能な場合は
true。それ以外の場合はfalse
read
public ObjectSE read(ResolvableType type, HttpInputMessage inputMessage, @Nullable MapSE<StringSE, ObjectSE> hints) throws IOExceptionSE, HttpMessageNotReadableExceptionインターフェースからコピーされた説明:SmartHttpMessageConverter指定された入力メッセージから指定された型のオブジェクトを読み取り、それを返します。- パラメーター:
type- 返されるオブジェクトの (潜在的にジェネリクスな) 型。この型は、このインターフェースのcanReadメソッドに以前に渡され、trueを返している必要があります。型ソースは、関連する場合、追加情報 (たとえば、関連するメソッドシグネチャー) を取得するために使用されることがあります。inputMessage- 読み込む HTTP 入力メッセージhints- エンコード方法に関する追加情報- 戻り値:
- 変換されたオブジェクト
- 例外:
IOExceptionSE- I/O エラーの場合HttpMessageNotReadableException- 変換エラーの場合
readInternal
protected ObjectSE readInternal(ClassSE<?> clazz, HttpInputMessage inputMessage) throws IOExceptionSE, HttpMessageNotReadableException クラスからコピーされた説明:AbstractHttpMessageConverter実際のオブジェクトを読み取る抽象テンプレートメソッド。AbstractHttpMessageConverter.read(Class, HttpInputMessage)から呼び出されます。- オーバーライド:
- クラス
AbstractSmartHttpMessageConverter<ObjectSE>のreadInternal - パラメーター:
clazz- 返すオブジェクトの型inputMessage- 読み込む HTTP 入力メッセージ- 戻り値:
- 変換されたオブジェクト
- 例外:
IOExceptionSE- I/O エラーの場合HttpMessageNotReadableException- 変換エラーの場合
customizeReader
protected tools.jackson.databind.ObjectReader customizeReader(tools.jackson.databind.ObjectReader reader, tools.jackson.databind.JavaType javaType) サブクラスはこのメソッドを使用して、値の読み取りに使用されるObjectReaderをカスタマイズできます。- パラメーター:
reader- カスタマイズするリーダーインスタンスjavaType- 読み取る要素値の種類- 戻り値:
- カスタマイズされた
ObjectReader
getCharset
writeInternal
protected void writeInternal(ObjectSE object, ResolvableType resolvableType, HttpOutputMessage outputMessage, @Nullable MapSE<StringSE, ObjectSE> hints) throws IOExceptionSE, HttpMessageNotWritableExceptionクラスからコピーされた説明:AbstractSmartHttpMessageConverter実際の本文を書き込む抽象テンプレートメソッド。AbstractSmartHttpMessageConverter.write(Object, ResolvableType, MediaType, HttpOutputMessage, Map)から呼び出されます。- 次で指定:
- クラス
AbstractSmartHttpMessageConverter<ObjectSE>のwriteInternal - パラメーター:
object- 出力メッセージに書き込むオブジェクトresolvableType- 書き込むオブジェクトの型outputMessage- 書き込む HTTP 出力メッセージhints- エンコード方法に関する追加情報- 例外:
IOExceptionSE- I/O エラーの場合HttpMessageNotWritableException- 変換エラーの場合
customizeWriter
protected tools.jackson.databind.ObjectWriter customizeWriter(tools.jackson.databind.ObjectWriter writer, @Nullable tools.jackson.databind.JavaType javaType, @Nullable MediaType contentType) サブクラスはこのメソッドを使用して、値の書き込みに使用されるObjectWriterをカスタマイズできます。- パラメーター:
writer- カスタマイズするライターインスタンスjavaType- 書き込む要素値の型contentType- 選択したメディア型- 戻り値:
- カスタマイズされた
ObjectWriter
writePrefix
メインコンテンツの前にプレフィックスを書きます。- パラメーター:
generator- コンテンツの書き込みに使用するジェネレーター。object- 出力メッセージに書き込むオブジェクト
writeSuffix
メインコンテンツの後にサフィックスを記述します。- パラメーター:
generator- コンテンツの書き込みに使用するジェネレーター。object- 出力メッセージに書き込むオブジェクト
getJavaType
getJsonEncoding
supportsRepeatableWrites
クラスからコピーされた説明:AbstractHttpMessageConverterこのメッセージコンバーターが指定されたオブジェクトを複数回書き込むことができるかどうかを示します。デフォルトの実装は
falseを返します。- オーバーライド:
- クラス
AbstractHttpMessageConverter<ObjectSE>のsupportsRepeatableWrites - パラメーター:
o- オブジェクト t- 戻り値:
-
tを繰り返し書き込める場合はtrue。それ以外の場合はfalse