SpringbootでRequestparamをどのように使用するのか?
Spring Bootでは、@RequestParamアノテーションを使用して、HTTPリクエストのパラメータをメソッドのパラメータにバインドすることができます。具体的な使用方法は以下の通りです:
- Controllerのメソッドに@RequestParamアノテーションを追加し、パラメータの名前、必須かどうか、デフォルト値などの属性を指定してください。
@GetMapping("/example")
public String exampleMethod(@RequestParam("paramName") String paramValue) {
// 方法体
}
- HTTPリクエストにおいて、パラメータはクエリ文字列を使って渡されます。たとえば、URLの形式でパラメータを渡すことができます:http://localhost:8080/example?paramName=value。
- @RequestParamアノテーションのプロパティを使用して、パラメータの動作を制御することができます。
- 必要なパラメーターを設定する際には、デフォルトでtrueに設定されます。つまり、パラメーターは必ず提供する必要があります。falseに設定されている場合、パラメーターは任意のものとなり、提供されない場合はメソッド内のパラメーターはnullになります。
- defaultValue:パラメーターのデフォルト値を設定します。リクエストにこのパラメーターが提供されていない場合、デフォルト値が使用されます。
@GetMapping("/example")
public String exampleMethod(@RequestParam(value = "paramName", required = false, defaultValue = "default") String paramValue) {
// 方法体
}
注意事項:
- @RequestParamの注釈のvalue属性は、HTTPリクエストパラメータの名前を指定するために使用されます。メソッドのパラメータ名とリクエストパラメータ名が一致する場合、value属性は省略することができます。
- @RequestParamアノテーションは、基本データ型、String、配列、コレクションなどのパラメータタイプをバインドすることをサポートしています。
- 複数の同じ名前のパラメータ(複数のチェックボックスなど)がある場合は、配列やコレクション型を使用してパラメータを受け取ることができます。