我正在读一篇关于REST资源命名的文章.
http://api.example.com/device-management/managed-devices/{id}/scripts/{id}:clone这是命名中最佳实践的一个例子,但我不知道如何使用@PathVariable注释声明它,并将一个{id}与{id}:clone区分开来。
public ResponseEntity<?> clone (
HttpServletRequest request,
@PathVariable long id, ...) {
..
}发布于 2018-05-28 19:38:56
您需要通过变量的名称或属性value与@PathVariable来区分这两个ID,如下所示:
@GetMapping("http://api.example.com/device-management/managed-devices/{idManagedDevice}/scripts/{idScript}"
public ResponseEntity<?> clone (HttpServletRequest request,
@PathVariable long idManagedDevice,
@PathVariable long idScript,
) {
..
}或者:
@GetMapping("http://api.example.com/device-management/managed-devices/{id}/scripts/{idScript}"
public ResponseEntity<?> clone (HttpServletRequest request,
@PathVariable(value="id") long idOfManagedDevice,
@PathVariable(value="idScript") long idOfScript,
) {
..
}https://stackoverflow.com/questions/50572164
复制相似问题