Java 如何在Spring中将UUID的url映射设置为PathVariable?
我的控制器中有两个入口点:Java 如何在Spring中将UUID的url映射设置为PathVariable?,java,spring,Java,Spring,我的控制器中有两个入口点: @RestController("users") public class UserController { @Autowired private UserManager mUserManager; @GetMapping() public ResponseEntity<List<User>> all(@RequestParam(defaultValue = "0") int page) {
@RestController("users")
public class UserController {
@Autowired
private UserManager mUserManager;
@GetMapping()
public ResponseEntity<List<User>> all(@RequestParam(defaultValue = "0") int page) {
List<User> users = mUserManager.getUsers(page);
return new ResponseEntity<>(users, HttpStatus.OK);
}
@GetMapping(value = "/{id}")
public ResponseEntity<UserModel> profile(@PathVariable UUID id) {
return new ResponseEntity<>(null);
}
}
正如我在
@RestController
注释中看到的那样,“users”
是一个bean名称。您的代码有什么问题?您的第二个控制器应符合您的需要@PathVariable UUID
应该包含您的/{id}
,您可以通过URL将id传递给您的服务http://localhost:8080/users/{B550e8400-e29b-41d4-a716-446655440000}
我的服务器尝试调用all()
而不是profile()
。是否尝试更改控制器的顺序,也许上面的控制器是先触发的(只是一个建议)?您需要@RequestMapping(“用户”)在class
level@jmw5598Thank非常感谢!我刚刚找到了它,我通过示例找到了它,所以我认为它是我的控制器的基本URL映射。
@RequestMapping("users")
@RestController("users")