アノテーションインターフェース RequestParam


@TargetSE(PARAMETERSE) @RetentionSE(RUNTIMESE) @DocumentedSE public @interface RequestParam
メソッドパラメーターを Web リクエストパラメーターにバインドする必要があることを示すアノテーション。

次のように、Spring MVC および Spring WebFlux のアノテーション付きハンドラーメソッドでサポートされます。

  • Spring MVC では、「リクエストパラメーター」は、マルチパートリクエストのクエリパラメーター、フォームデータ、パーツにマップされます。これは、サーブレット API がクエリパラメーターとフォームデータを「パラメーター」と呼ばれる単一のマップに結合し、リクエストボディの自動解析を含むためです。
  • Spring WebFlux では、「リクエストパラメーター」は照会パラメーターにのみマップされます。3 つすべてのクエリ、フォームデータ、マルチパートデータを処理するには、ModelAttribute アノテーションが付けられたコマンドオブジェクトへのデータバインディングを使用できます。

メソッドパラメーター型が MapSE で、リクエストパラメーター名が指定されている場合、適切な変換戦略が利用可能であると仮定して、リクエストパラメーター値は MapSE に変換されます。

メソッドパラメーターが Map<String, String>SE または MultiValueMap<String, String> で、パラメーター名が指定されていない場合、マップパラメーターにはすべてのリクエストパラメーターの名前と値が入力されます。

導入:
2.5
作成者:
Arjen Poutsma, Juergen Hoeller, Sam Brannen
関連事項:
  • オプション要素のサマリー

    オプション要素
    修飾子と型
    オプションの要素
    説明
    リクエストパラメーターが指定されていない場合、または空の値がある場合にフォールバックとして使用するデフォルト値。
    バインドするリクエストパラメーターの名前。
    boolean
    パラメーターが必須かどうか。
    name() のエイリアス。
  • 要素の詳細

    • value

      @AliasFor("name") StringSE value
      name() のエイリアス。
      デフォルト:
      ""
    • name

      @AliasFor("value") StringSE name
      バインドするリクエストパラメーターの名前。
      導入:
      4.2
      デフォルト:
      ""
    • required

      boolean required
      パラメーターが必須かどうか。

      デフォルトは true で、リクエストにパラメーターが欠落している場合に例外がスローされます。パラメーターがリクエストに存在しない場合、null 値を使用する場合は、これを false に切り替えます。

      または、defaultValue() を指定します。これにより、このフラグが暗黙的に false に設定されます。

      デフォルト:
      true
    • defaultValue

      StringSE defaultValue
      リクエストパラメーターが指定されていない場合、または空の値がある場合にフォールバックとして使用するデフォルト値。

      デフォルト値を指定すると、required() が false に暗黙的に設定されます。

      デフォルト:
      "\n\t\t\n\t\t\n\ue000\ue001\ue002\n\t\t\t\t\n"