Spring中的@PathVariable注解

作用:用于从URL路径中提取参数值,并将其绑定到方法的参数上。当客户端发送HTTP请求时,URL中可能包含一些占位符(PathVariable),这些占位符是用来传递参数的。使用 @PathVariable 注解可以将这些参数值提取出来,然后在方法中进行处理。


使用步骤:

  1. 在Controller的处理方法中,使用 @PathVariable 注解在方法的参数上声明占位符的名称,并指定要绑定的参数。

  2. 当客户端发送HTTP请求时,包含了对应的参数值,Spring框架会自动将这些参数值提取出来,并传递给处理方法的参数。

示例:假设有以下URL:/users/{id}

@Controller
public class UserController {

    @GetMapping("/users/{id}")
    public ResponseEntity<User> getUserById(@PathVariable Long id) {
        // 在此处通过id参数查询数据库获取对应的User对象
        // 然后返回User对象
        User user = userRepository.getUserById(id);
        if (user != null) {
            return ResponseEntity.ok(user);
        } else {
            return ResponseEntity.notFound().build();
        }
    }
}

示例中,@PathVariable Long id 将从URL路径中提取id参数,并将其绑定到getUserById方法的id参数上。此时,如果客户端发送请求 /users/123 ,Spring会将123提取出来,并作为id参数传递给getUserById方法。


注意:@PathVariable 注解的参数名要与URL中的占位符名称一致,才能正确地绑定参数值。如果名称不一致,可以通过 @PathVariable("customId") 的方式来显式指定占位符的名称。

猜你喜欢

转载自blog.csdn.net/LuoluoluoluoYan/article/details/132033036