假设我们有一个根据 ID 删除某个资源的操作,如果找不到相应 ID 的资源需要返回 404 Not Found。我们可以有以下几种方法来实现这个需求:
使用 @ResponseStatus(HttpStatus.NOT_FOUND)
使用这个方法,我们需要新建一个异常,然后使用 @ResponseStatus(HttpStatus.NOT_FOUND) 标注它。
@ResponseStatus(code = HttpStatus.NOT_FOUND)
public class ResourceNotFoundException extends RuntimeException {
}
抛出 ResponseStatusException 异常
使用这个方法不用新建一个异常类。直接抛出异常,并在新建异常的时候设置为 HttpStatus.NOT_FOUND 就好了。
@DeleteMapping("{id}")
public void deleteCustomer(@PathVariable Integer id)
{
try {
var result