クラス AbstractJackson2Encoder
java.lang.ObjectSE
org.springframework.http.codec.json.Jackson2CodecSupport
org.springframework.http.codec.json.AbstractJackson2Encoder
- 実装されているすべてのインターフェース:
- Encoder<ObjectSE>,- HttpMessageEncoder<ObjectSE>
public abstract class AbstractJackson2Encoder
extends Jackson2CodecSupport
implements HttpMessageEncoder<ObjectSE>
Jackson 2.x エンコーディングのサポートメソッドを提供する基本クラス。ストリーミング以外のユースケースでは、パフォーマンス上の理由から、直列化の前に 
Flux 要素が ListSE に収集されます。- 導入:
- 5.0
- 作成者:
- Sebastien Deleuze, Arjen Poutsma
- フィールドのサマリー- クラス org.springframework.http.codec.json.Jackson2CodecSupport から継承されたフィールド- JSON_VIEW_HINT, logger
- コンストラクターの概要コンストラクター修飾子コンストラクター説明- protected- AbstractJackson2Encoder- (ObjectMapper mapper, MimeType... mimeTypes) 使用する Jackson- ObjectMapperを持つコンストラクター。
- メソッドのサマリー修飾子と型メソッド説明- boolean- canEncode- (ResolvableType elementType, MimeType mimeType) エンコーダが特定のソース要素型と出力ストリームの MIME 型をサポートするかどうか。- protected ObjectWriter- customizeWriter- (ObjectWriter writer, MimeType mimeType, ResolvableType elementType, MapSE<StringSE, - ObjectSE> hints) サブクラスは、このメソッドを使用して、値の書き込みに使用される- ObjectWriterをカスタマイズできます。- reactor.core.publisher.Flux<DataBuffer>- encode- (Publisher<?> inputStream, DataBufferFactory bufferFactory, ResolvableType elementType, MimeType mimeType, MapSE<StringSE, - ObjectSE> hints) 型- Tのオブジェクトのストリームを- DataBuffer出力ストリームにエンコードします。- encodeValue- (ObjectSE value, DataBufferFactory bufferFactory, ResolvableType valueType, MimeType mimeType, MapSE<StringSE, - ObjectSE> hints) 型 T のオブジェクトをデータバッファにエンコードします。- protected <A extends AnnotationSE>
 A- getAnnotation- (MethodParameter parameter, ClassSE<A> annotType) このエンコーダーでサポートされている MIME 型のリストを返します。- getEncodableMimeTypes- (ResolvableType elementType) 指定された型の要素について、このエンコーダーでサポートされている MIME 型のリストを返します。- getEncodeHints- (ResolvableType actualType, ResolvableType elementType, MediaType mediaType, ServerHttpRequest request, ServerHttpResponse response) サーバーリクエストまたはターゲットコントローラーメソッドパラメーターのアノテーションに基づいてデコードヒントを取得します。- protected JsonEncoding- getJsonEncoding- (MimeType mimeType) 指定された MIME 型に使用する JSON エンコーディングを決定します。入力ストリームの最後で自動的にフラッシュを実行する必要がある「ストリーミング」メディア型を返します。- protected byte[]- getStreamingMediaTypeSeparator- (MimeType mimeType) 指定された mime 型に使用するセパレータを返します。- void- setStreamingMediaTypes- (ListSE<MediaType> mediaTypes) ストリームの最後で自動的にフラッシュを実行する「ストリーミング」メディア型を設定します。- クラス org.springframework.http.codec.json.Jackson2CodecSupport から継承されたメソッド- getHints, getJavaType, getMediaTypesForProblemDetail, getMimeTypes, getMimeTypes, getObjectMapper, getObjectMapperRegistrations, getObjectMappersForType, getParameter, logWarningIfNecessary, registerObjectMappersForType, selectObjectMapper, setObjectMapper, supportsMimeType
- コンストラクターの詳細- AbstractJackson2Encoder使用する Jackson- ObjectMapperを持つコンストラクター。
 
- メソッドの詳細- setStreamingMediaTypesストリームの最後で自動的にフラッシュを実行する「ストリーミング」メディア型を設定します。
- canEncodeインターフェースからコピーされた説明:- Encoderエンコーダが特定のソース要素型と出力ストリームの MIME 型をサポートするかどうか。
- encodepublic reactor.core.publisher.Flux<DataBuffer> encode- (Publisher<?> inputStream, DataBufferFactory bufferFactory, ResolvableType elementType, @Nullable MimeType mimeType, @Nullable MapSE<StringSE, - ObjectSE> hints) インターフェースからコピーされた説明:- Encoder型- Tのオブジェクトのストリームを- DataBuffer出力ストリームにエンコードします。- 次で指定:
-  インターフェース Encoder<ObjectSE>のencode
- パラメーター:
- inputStream- エンコードするオブジェクトの入力ストリーム。入力を要素のストリームとしてではなく単一の値としてエンコードする必要がある場合は、- Monoのインスタンスを使用する必要があります。
- bufferFactory- 出力ストリーム- DataBufferを作成するための
- elementType- 入力ストリーム内の要素の予想される型。この型は、事前に- Encoder.canEncode(org.springframework.core.ResolvableType, org.springframework.util.MimeType)メソッドに渡されていなければならず、- trueを返さなければなりません。
- mimeType- 出力コンテンツの MIME 型 (オプション)
- hints- エンコード方法に関する追加情報
- 戻り値:
- 出力ストリーム
 
- encodeValuepublic DataBuffer encodeValue- (ObjectSE value, DataBufferFactory bufferFactory, ResolvableType valueType, @Nullable MimeType mimeType, @Nullable MapSE<StringSE, - ObjectSE> hints) インターフェースからコピーされた説明:- Encoder型 T のオブジェクトをデータバッファーにエンコードします。これは、個別のメッセージ(またはイベント)が完全に集約された形式で個別にエンコードおよび処理されるシナリオで役立ちます。- デフォルトでは、このメソッドは - UnsupportedOperationExceptionSE を発生させ、一部のエンコーダーは単一のバッファーを作成できないか、同期的に作成できないことが予想されます(例:- Resourceのエンコード)。- 次で指定:
-  インターフェース Encoder<ObjectSE>のencodeValue
- パラメーター:
- value- エンコードされる値
- bufferFactory- 出力- DataBufferを作成するため
- valueType- エンコードされる値の型
- mimeType- 出力コンテンツの MIME 型 (オプション)
- hints- エンコード方法に関する追加情報
- 戻り値:
- エンコードされたコンテンツ
 
- customizeWriterprotected ObjectWriter customizeWriter- (ObjectWriter writer, @Nullable MimeType mimeType, ResolvableType elementType, @Nullable MapSE<StringSE, - ObjectSE> hints) サブクラスは、このメソッドを使用して、値の書き込みに使用される- ObjectWriterをカスタマイズできます。- パラメーター:
- writer- カスタマイズするライターインスタンス
- mimeType- 選択した MIME 型
- elementType- 書き込む要素値の型
- hints- 直列化のヒントを含むマップ。Reactor コンテキストは、利用可能な場合、キー- ContextView.class.getName()でアクセスできます。
- 戻り値:
-  使用するカスタマイズされた ObjectWriter
 
- getStreamingMediaTypeSeparator指定された mime 型に使用するセパレータを返します。- デフォルトでは、指定された mime 型が構成済みの - streamingmime 型のいずれかである場合、このメソッドは改行- "\n"を返します。- 導入:
- 5.3
 
- getJsonEncoding指定された MIME 型に使用する JSON エンコーディングを決定します。- パラメーター:
- mimeType- 呼び出し元によってリクエストされた MIME 型
- 戻り値:
-  使用する JSON エンコード (非 null)
- 導入:
- 5.0.5
 
- getEncodableMimeTypesインターフェースからコピーされた説明:- Encoderこのエンコーダーでサポートされている MIME 型のリストを返します。このリストは、考えられるすべてのターゲット要素型に適用されるとは限らないため、このメソッドの呼び出しは通常、- canEncode(elementType, null)を介して保護する必要があります。このリストでは、特定の要素型でのみサポートされている MIME 型を除外することもできます。または、- Encoder.getEncodableMimeTypes(ResolvableType)を使用してより正確なリストを作成します。- 次で指定:
-  インターフェース Encoder<ObjectSE>のgetEncodableMimeTypes
- 戻り値:
- サポートされている MIME 型のリスト
 
- getEncodableMimeTypesインターフェースからコピーされた説明:- Encoder指定された型の要素について、このエンコーダーでサポートされている MIME 型のリストを返します。このリストは、エンコーダーが要素型をサポートしていない場合、または MIME 型のサブセットに対してのみサポートしている場合、- Encoder.getEncodableMimeTypes()とは異なる場合があります。- 次で指定:
-  インターフェース Encoder<ObjectSE>のgetEncodableMimeTypes
- パラメーター:
- elementType- エンコーディングをチェックする要素の型
- 戻り値:
- 特定の要素型でサポートされている MIME 型のリスト
 
- getStreamingMediaTypesインターフェースからコピーされた説明:- HttpMessageEncoder入力ストリームの最後で自動的にフラッシュを実行する必要がある「ストリーミング」メディア型を返します。- 次で指定:
-  インターフェース HttpMessageEncoder<ObjectSE>のgetStreamingMediaTypes
 
- getEncodeHintspublic MapSE<StringSE,- ObjectSE> getEncodeHints- (@Nullable ResolvableType actualType, ResolvableType elementType, @Nullable MediaType mediaType, ServerHttpRequest request, ServerHttpResponse response) インターフェースからコピーされた説明:- HttpMessageEncoderサーバーリクエストまたはターゲットコントローラーメソッドパラメーターのアノテーションに基づいてデコードヒントを取得します。- 次で指定:
-  インターフェース HttpMessageEncoder<ObjectSE>のgetEncodeHints
- パラメーター:
- actualType- エンコードする実際のソース型。おそらくリアクティブラッパーであり、- MethodParameterからソースされます。つまり、メソッドアノテーションへのアクセスを提供します。
- elementType- エンコードしようとしている- Flux/Mono内の要素型。
- request- 現在のリクエスト
- response- 現在のレスポンス
- 戻り値:
- ヒントがあるマップ、空の場合もある
 
- getAnnotation@Nullable protected <A extends AnnotationSE> A getAnnotation- (MethodParameter parameter, ClassSE<A> annotType) - 次で指定:
-  クラス Jackson2CodecSupportのgetAnnotation