使用Spring MVC 开发 RESTful API (RESTful API 错误处理)

使用Spring MVC 开发 RESTful API (RESTful API 错误处理)

Spring Boot 中默认的错误处理机制

自定义异常处理

1.Spring Boot 中默认的错误处理机制

当我们启动项目,并在该项目端口上访问/xxx, 这个显然是一个没有的地址,那么结果可想而知:

是404,没有找到该页面,而在spring中来控制错误的方法是BasicErrorController.java,有兴趣可以看一看。

我们自定义,可以自己定制错误页面在resources下面创建error文件夹再创建404.html,500.html

自定义异常处理

我们可以自己创建一个exception包以及UserNotExistException.java文件


UserNotExistException.java

packagecom.imooc.exception;

publicclassUserNotExistExceptionextendsRuntimeException{

privatestaticfinallongserialVersionUID=-6112780192479692859L;

privateStringid;

public UserNotExistException(Stringid){

super("user not exist");

this.id=id;

   }

publicStringgetId() {

returnid;

   }

publicvoidsetId(Stringid) {

this.id=id;

   }

}

然后我们再创建一个ControllerExceptionHandler.java文件,用来异常处理

这样里面创建一个处理摸一个异常的方法,来进行自定义处理异常:

@ControllerAdvice

publicclassControllerExceptionHandler{

@ExceptionHandler(UserNotExistException.class)

@ResponseBody

@ResponseStatus(HttpStatus.INTERNAL_SERVER_ERROR)

publicMaphandleUserNotExistException(UserNotExistExceptionex){

Mapresult=newHashMap<>();

result.put("id",ex.getId());

result.put("message",ex.getMessage());

returnresult;

   }

}

进行请求结果:

你可能感兴趣的:(使用Spring MVC 开发 RESTful API (RESTful API 错误处理))