我有两个方法@GetMapping和@GetMapping("/{id}")
@RestController("/user"){
public class UserRestController {
@GetMapping
public ResponseData get() {
...........
return responseData;
}
@GetMapping("/{id}")
public ResponseData getUser(@PathParam("id") Long id) {
ResponseData responseData = new ResponseData();
...........
return responseData;
}
当我点击 URL http://localhost:8080/user
我采取了 @GetMapping("/{id}") 方法
因为它需要 id
null,我该如何解决这个问题?
最佳答案
您将 PathParam
与 PathVariable
混淆了。
在您的示例中,我认为您需要的是 PathVariable
。此外,您可以删除 name
字段,因为参数的名称相同:id
。
这是更新后的代码:
@GetMapping("/{id}")
public ResponseData getUser(@PathVariable Long id) {
...
}
此外,您需要在同一 Controller 下定义用户
映射,即 RequestMapping
注释:
@RestController
@RequestMapping("/user")
public class UserRestController {
...
}
关于java - @GetMapping 和 @GetMapping ("/{id}")始终返回 @GetMapping ("/{id}"),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60396228/