开发中产生的异常一般都会交给controller处理,可直接对controller抛出的异常进行统一处理,如下:
图(controller和自定义统一异常处理类):
1.创建 MyControllerException.java文件统一处理controller抛出的异常(controller中不需要有任何操作,直接如下操作即可)
@ControllerAdvice //定义全局异常处理类 确保此MyControllerException类能被扫描到并装载进 Spring 容器中。
public class MyControllerException {
@ExceptionHandler(Exception.class) //注解声明异常处理方法
@ResponseBody //返回json是数据,也可以设置为出错之后 跳转指定的页面
Result handleException(Exception e) {
return Result.ok("请求出现错误,");
}
}
当然,切记 如果 controller出错后 不想进入当前的这个异常处理类,你可以自己在cotroller中 捕获异常并且处理 这样的话就不会进入统一异常处理类中了。