@@ GetMapping和@GetMapping(“ / {id}”)始终返回@GetMapping(“ / {id}”)
来源:爱站网时间:2021-09-16编辑:网友分享
我有两种方法@GetMapping和@GetMapping(“ / {id}”)@RestController(“ / user”){公共类UserRestController {@GetMapping公共ResponseData get(){..........返回responseData; ...
问题描述
我有两个方法@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
。此外,由于参数的名称相同:PathVariable
,因此您可以删除name
字段。
这里是更新的代码:
id
此外,您想要在同一控制器下定义@GetMapping("/{id}")
public ResponseData getUser(@PathVariable Long id) {
...
}
映射的是user
注释:
RequestMapping