在 RESTful 或基于 URL 路径的请求中,有时需要从路径中提取特定的值,例如标识资源的 ID 或其他参数。@PathVariable
注解允许您在控制器方法中将路径中的变量提取为方法参数,以便更方便地对其进行处理。
以下是 @PathVariable
的用法示例:
@GetMapping("/users/{userId}")
public ResponseEntity<User> getUser(@PathVariable Long userId) {
// 根据 userId 从数据库或其他数据源获取用户信息
User user = userService.getUserById(userId);
if (user != null) {
return ResponseEntity.ok(user);
} else {
return ResponseEntity.notFound().build();
}
}
在上述示例中,我们定义了一个 GET 请求处理程序,并使用 @PathVariable
注解将路径中的 userId
提取为方法参数。在方法内部,我们可以使用该参数来执行相应的操作,例如根据用户 ID 从数据库中检索用户信息。
使用 @PathVariable
注解时,请确保注解中的名称与路径中要提取的变量名称相匹配。在示例中,我们使用 {userId}
占位符来匹配变量,并将其绑定到方法参数 userId
上。