Spring MVCでPathParamとPathVariableをどのように使用するか教えてください。

Spring MVCにおいて、@PathParamと@PathVariableはURLのパスからパラメータを取得するための注釈です。これらはURLパスの変数をメソッドのパラメータにバインドするために使用されます。

@PathParamを使用する。

  1. コントローラーメソッドのパラメーターリストには、@PathParamアノテーションを使用して、抽出したいURLパス内の変数名を指定します。
  2. @RequestMappingアノテーションでは、URLのパスに変数を示すために{}を使用します。
  3. メソッドの中で、@PathParamアノテーションを付けたパラメータを使って、URLのパスから変数の値を取得することができます。

以下はサンプルコードです。

@Controller
@RequestMapping("/users")
public class UserController {
    
    @GetMapping("/{userId}")
    public String getUser(@PathParam("userId") String userId) {
        // 根据userId获取用户信息
        return "user";
    }
}

パス変数を使う:

  1. コントローラーメソッドのパラメーターリストで、@PathVariableアノテーションを使用して、URLパスから抽出する変数名を指定します。
  2. @RequestMapping注釈で、URLのパスに変数を示すためにプレースホルダ{}を使用します。
  3. 方法のなかで、@PathVariableアノテーションをつけたパラメータを使って、URLのパスの値を直接取得することができます。

以下はサンプルコードです。

@Controller
@RequestMapping("/users")
public class UserController {
    
    @GetMapping("/{userId}")
    public String getUser(@PathVariable("userId") String userId) {
        // 根据userId获取用户信息
        return "user";
    }
}

@PathParamや@PathVariable、どちらを使用しても、URLのパスからパラメータを抽出することができます。使用方法は似ており、違いは注釈の名前だけです。

bannerAds