クラス ModelAttributeMethodArgumentResolver

java.lang.ObjectSE
org.springframework.web.reactive.result.method.HandlerMethodArgumentResolverSupport
org.springframework.web.reactive.result.method.annotation.ModelAttributeMethodArgumentResolver
実装されたすべてのインターフェース:
HandlerMethodArgumentResolver

public class ModelAttributeMethodArgumentResolver extends HandlerMethodArgumentResolverSupport
@ModelAttribute アノテーション付きメソッド引数を解決します。

モデル属性はモデルから供給されるか、デフォルトのコンストラクターを使用して作成され、モデルに追加されます。作成された属性は、リクエストへのデータバインディングを介して入力されます(フォームデータ、クエリパラメーター)。引数に @jakarta.validation.Valid または Spring 独自の @org.springframework.validation.annotation.Validated アノテーションが付けられている場合も、検証が適用される場合があります。

このハンドラーが useDefaultResolution=true で作成された場合、非単純型の引数と戻り値は、@ModelAttribute の有無にかかわらずモデル属性と見なされます。

導入:
5.0
作成者:
Rossen Stoyanchev, Juergen Hoeller, Sam Brannen
  • コンストラクターの詳細

    • ModelAttributeMethodArgumentResolver

      public ModelAttributeMethodArgumentResolver(ReactiveAdapterRegistry adapterRegistry, boolean useDefaultResolution)
      デフォルトの解決モードフラグを持つクラスコンストラクター。
      パラメーター:
      adapterRegistry - Mono との間で他のリアクティブ型に適応するため
      useDefaultResolution - "true" の場合、非単純メソッドの引数と戻り値は、@ModelAttribute アノテーションが存在するかどうかに関係なく、モデル属性と見なされます。
  • メソッドの詳細

    • supportsParameter

      public boolean supportsParameter(MethodParameter parameter)
      インターフェースからコピーされた説明: HandlerMethodArgumentResolver
      このリゾルバーが指定されたメソッドパラメーターをサポートするかどうか。
      パラメーター:
      parameter - メソッドパラメーター
    • resolveArgument

      public reactor.core.publisher.Mono<ObjectSE> resolveArgument(MethodParameter parameter, BindingContext context, ServerWebExchange exchange)
      インターフェースからコピーされた説明: HandlerMethodArgumentResolver
      メソッドパラメーターの値を解決します。
      パラメーター:
      parameter - メソッドパラメーター
      context - 使用するバインディングコンテキスト
      exchange - 現在の交換
      戻り値:
      引数値の Mono、おそらく空
    • constructAttribute

      protected reactor.core.publisher.Mono<VoidSE> constructAttribute(WebExchangeDataBinder binder, ServerWebExchange exchange)
      属性を作成し、リクエストをコンストラクター引数にバインドする拡張ポイント。
      パラメーター:
      binder - バインディングに使用するデータバインダーインスタンス
      exchange - 現在の交換
      導入:
      6.1
    • bindRequestParameters

      protected reactor.core.publisher.Mono<VoidSE> bindRequestParameters(WebExchangeDataBinder binder, ServerWebExchange exchange)
      リクエストをターゲットオブジェクトにバインドする拡張ポイント。
      パラメーター:
      binder - バインディングに使用するデータバインダーインスタンス
      exchange - 現在のリクエスト
      導入:
      5.2.6