クラス RequestMappingHandlerAdapter
java.lang.ObjectSE
org.springframework.web.reactive.result.method.annotation.RequestMappingHandlerAdapter
- 実装されているすべてのインターフェース:
Aware, InitializingBean, ApplicationContextAware, DispatchExceptionHandler, HandlerAdapter
public class RequestMappingHandlerAdapter
extends ObjectSE
implements HandlerAdapter, DispatchExceptionHandler, ApplicationContextAware, InitializingBean
@RequestMapping ハンドラーメソッドの呼び出しをサポートします。- 導入:
- 5.0
- 作成者:
- Rossen Stoyanchev, Brian Clozel
コンストラクターの概要
コンストラクターメソッドのサマリー
修飾子と型メソッド説明voidコントローラーメソッドの引数に設定されたリゾルバーを返します。設定されたRequestedContentTypeResolverを返します。HTTP メッセージリーダーのコンフィギュレータを返します。リアクティブ型を適応させるために構成されたレジストリを返します。設定された WebBindingInitializer を返すか、存在しない場合はnullを返します。reactor.core.publisher.Mono<HandlerResult> handle(ServerWebExchange exchange, ObjectSE handler) 以前にHandlerAdapter.supports(Object)を介してチェックされた、指定されたハンドラーでリクエストを処理します。reactor.core.publisher.Mono<HandlerResult> handleError(ServerWebExchange exchange, ThrowableSE ex) 指定された例外を処理し、HTTP レスポンスのレンダリングに使用できるHandlerResultにマッピングします。voidsetApplicationContext(ApplicationContext applicationContext) ConfigurableApplicationContextは、メソッド引数のデフォルト値の式を解決し、@ControllerAdviceBean を検出するために必要です。voidコントローラーメソッドの引数のリゾルバーを構成します。voidsetBlockingExecutor(@Nullable ExecutorSE executor) ブロッキングコントローラーメソッドを呼び出すようにエグゼキューターを構成します。voidsetBlockingMethodPredicate(PredicateSE<HandlerMethod> predicate) 構成されたblockingExecutorを通じてどのコントローラーメソッドを呼び出すかを決定する述語を提供します。voidsetContentTypeResolver(RequestedContentTypeResolver contentTypeResolver) リクエストされたメディア型を判別するために使用するRequestedContentTypeResolverを設定します。voidsetMessageReaders(ListSE<HttpMessageReader<?>> messageReaders) HTTP メッセージリーダーを構成して、リクエスト本文を逆直列化します。voidさまざまなリアクティブ型を適応させるためにレジストリを構成します。voidsetWebBindingInitializer(@Nullable WebBindingInitializer webBindingInitializer) WebBindingInitializer に「グローバル」初期化を提供して、すべての DataBinder インスタンスに適用します。booleanこのHandlerAdapterが指定されたhandlerをサポートするかどうか。
コンストラクターの詳細
RequestMappingHandlerAdapter
public RequestMappingHandlerAdapter()
メソッドの詳細
setMessageReaders
HTTP メッセージリーダーを構成して、リクエスト本文を逆直列化します。デフォルトでは、これは
ServerCodecConfigurerのデフォルトのリーダーに設定されています。getMessageReaders
HTTP メッセージリーダーのコンフィギュレータを返します。setWebBindingInitializer
WebBindingInitializer に「グローバル」初期化を提供して、すべての DataBinder インスタンスに適用します。getWebBindingInitializer
設定された WebBindingInitializer を返すか、存在しない場合はnullを返します。setArgumentResolverConfigurer
コントローラーメソッドの引数のリゾルバーを構成します。getArgumentResolverConfigurer
コントローラーメソッドの引数に設定されたリゾルバーを返します。setContentTypeResolver
リクエストされたメディア型を判別するために使用するRequestedContentTypeResolverを設定します。設定されていない場合、デフォルトのコンストラクターが使用されます。- 導入:
- 6.2
getContentTypeResolver
設定されたRequestedContentTypeResolverを返します。- 導入:
- 6.2
setBlockingExecutor
ブロッキングコントローラーメソッドを呼び出すようにエグゼキューターを構成します。デフォルトでは、これは設定されていないため、コントローラーメソッドはエグゼキューターを使用せずに呼び出されます。
- パラメーター:
executor- 使用するタスク実行プログラム- 導入:
- 6.1
setBlockingMethodPredicate
構成されたblockingExecutorを通じてどのコントローラーメソッドを呼び出すかを決定する述語を提供します。エグゼキューターが構成されている場合、デフォルトの述語は、構成された
ReactiveAdapterRegistryによって戻り値の型が認識されないコントローラーメソッドと一致します。- パラメーター:
predicate- 使用する述語- 導入:
- 6.1
setReactiveAdapterRegistry
さまざまなリアクティブ型を適応させるためにレジストリを構成します。デフォルトでは、これはデフォルト設定の
ReactiveAdapterRegistryのインスタンスです。getReactiveAdapterRegistry
リアクティブ型を適応させるために構成されたレジストリを返します。setApplicationContext
ConfigurableApplicationContextは、メソッド引数のデフォルト値の式を解決し、@ControllerAdviceBean を検出するために必要です。- 次で指定:
- インターフェース
ApplicationContextAwareのsetApplicationContext - パラメーター:
applicationContext- このオブジェクトによって使用される ApplicationContext オブジェクト- 関連事項:
afterPropertiesSet
インターフェースからコピーされた説明:InitializingBeanすべての Bean プロパティを設定し、BeanFactoryAware、ApplicationContextAwareなどを満たした後、包含BeanFactoryによって呼び出されます。このメソッドにより、Bean インスタンスは、すべての Bean プロパティが設定されたときに、その全体的な構成の検証と最終的な初期化を実行できます。
- 次で指定:
- インターフェース
InitializingBeanのafterPropertiesSet - 例外:
ExceptionSE- 構成の誤り(必須プロパティの設定の失敗など)の場合、またはその他の理由で初期化が失敗した場合
supports
インターフェースからコピーされた説明:HandlerAdapterこのHandlerAdapterが指定されたhandlerをサポートするかどうか。- 次で指定:
- インターフェース
HandlerAdapterのsupports - パラメーター:
handler- チェックするハンドラーオブジェクト- 戻り値:
- ハンドラーがサポートされているかどうか
handle
public reactor.core.publisher.Mono<HandlerResult> handle(ServerWebExchange exchange, ObjectSE handler) インターフェースからコピーされた説明:HandlerAdapter以前にHandlerAdapter.supports(Object)を介してチェックされた、指定されたハンドラーでリクエストを処理します。実装では、例外処理について次のことを考慮する必要があります。
- このメソッド内で呼び出し例外を処理します。
- 返された
HandlerResultのSet an exception handlerは、非同期の戻り値からの遅延例外を処理し、レスポンスレンダリングからの例外を処理します。 DispatchExceptionHandlerを実装して、ハンドラーが選択される前に発生する例外に例外処理を継承します。
- 次で指定:
- インターフェース
HandlerAdapterのhandle - パラメーター:
exchange- 現在のサーバー交換handler-HandlerAdapter.supports(Object)を介して事前にチェックされている必要がある選択されたハンドラー- 戻り値:
MonoはHandlerResultを発行するか、リクエストが完全に処理された場合は空になります。エラーシグナルはDispatcherHandler内では処理されず、代わりにWebFilterチェーンの最後で登録されたWebExceptionHandlerの チェーンによって処理されます。
handleError
public reactor.core.publisher.Mono<HandlerResult> handleError(ServerWebExchange exchange, ThrowableSE ex) インターフェースからコピーされた説明:DispatchExceptionHandler指定された例外を処理し、HTTP レスポンスのレンダリングに使用できるHandlerResultにマッピングします。- 次で指定:
- インターフェース
DispatchExceptionHandlerのhandleError - パラメーター:
exchange- 現在の交換ex- 処理する例外- 戻り値:
- 元の例外が処理されない場合に
HandlerResultまたはエラーシグナルを発行するMono