@PathVariable
是SpringMVC
中的注解,用于将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);
}