What is `@PathVariable` does?

发布时间:2024年01月14日

@PathVariableSpringMVC中的注解,用于将HTTP请求的URI路径变量映射到Controller方法参数上。
当URL路径中包含占位符(由大括号 {} 包围的部分)时,可以使用此注解来绑定这些动态部分到方法参数。

使用样例

获取单个路径变量

#  对应请求示例: GET /users/123

@GetMapping("/users/{userId}")
public User getUserDetails(@PathVariable("userId") Long userId) {
    // 根据userId从数据库或其他存储获取用户详细信息
    return userService.getUserById(userId);
}

获取多个路径变量

# 对应请求示例: GET /departments/5/employees/10

@GetMapping("/departments/{deptId}/employees/{empId}")
public Employee getEmployeeByDepartment(@PathVariable("deptId") Long deptId, @PathVariable("empId") Long empId) {
    return employeeService.getEmployeeByIdAndDeptId(empId, deptId);
}

使用正则表达式约束路径变量

# 对应请求示例: GET /users/john_doe

@GetMapping("/users/{username:[a-zA-Z0-9_]+}")
public User getUserByUsername(@PathVariable("username") String username) {
    return userService.getUserByUsername(username);
}
文章来源:https://blog.csdn.net/weixin_37646636/article/details/135588854
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。