Spring MVCでPathParamとPathVariableをどのように使用するか教えてください。
Spring MVCにおいて、@PathParamと@PathVariableはURLのパスからパラメータを取得するための注釈です。これらはURLパスの変数をメソッドのパラメータにバインドするために使用されます。
@PathParamを使用する。
- コントローラーメソッドのパラメーターリストには、@PathParamアノテーションを使用して、抽出したいURLパス内の変数名を指定します。
- @RequestMappingアノテーションでは、URLのパスに変数を示すために{}を使用します。
- メソッドの中で、@PathParamアノテーションを付けたパラメータを使って、URLのパスから変数の値を取得することができます。
以下はサンプルコードです。
@Controller
@RequestMapping("/users")
public class UserController {
@GetMapping("/{userId}")
public String getUser(@PathParam("userId") String userId) {
// 根据userId获取用户信息
return "user";
}
}
パス変数を使う:
- コントローラーメソッドのパラメーターリストで、@PathVariableアノテーションを使用して、URLパスから抽出する変数名を指定します。
- @RequestMapping注釈で、URLのパスに変数を示すためにプレースホルダ{}を使用します。
- 方法のなかで、@PathVariableアノテーションをつけたパラメータを使って、URLのパスの値を直接取得することができます。
以下はサンプルコードです。
@Controller
@RequestMapping("/users")
public class UserController {
@GetMapping("/{userId}")
public String getUser(@PathVariable("userId") String userId) {
// 根据userId获取用户信息
return "user";
}
}
@PathParamや@PathVariable、どちらを使用しても、URLのパスからパラメータを抽出することができます。使用方法は似ており、違いは注釈の名前だけです。