定义全局异常处理器 | 带你读《SpringBoot实战教程》之十三

上一篇:如何如何解析Json数据 | 带你读《SpringBoot实战教程》之十二
下一篇:异步调用实现多线程处理任务 | 带你读《SpringBoot实战教程》之十四

本文来自于千锋教育在阿里云开发者社区学习中心上线课程《SpringBoot实战教程》,主讲人杨红艳,点击查看视频内容

20.定义全局异常处理器

SpringBoot使用AOP思想进行全局异常处理
创建一个全局异常处理类,如下:
定义全局异常处理器 | 带你读《SpringBoot实战教程》之十三

异常通常作为一个通知介入的,所以说我们需要用到一个注解,接下来我们要写当发生异常时,对异常的处理方式。我们写一个功能:

@ControllerAdvice
public class GlobalExceptionHandler {

    @ExceptionHandler(Exception.class) 
    @ResponseBody
    public Map<String,Object> allExceptionHandler(  
            Exception exception) throws Exception  
    {  
        Map<String,Object> map = new HashMap<String,Object>();
        map.put("errorCode", 500);
        map.put("errorMsg", exception.toString());
        return map;
    }  
}

接下来验证处理器是否好用,创建TestController:
定义全局异常处理器 | 带你读《SpringBoot实战教程》之十三

全局处理器捕获到异常后,就会返回该异常信息。
启动路径之后,显示结果为:
定义全局异常处理器 | 带你读《SpringBoot实战教程》之十三

替换信息

int[ ] arr = new int[3];
System.out.println(arr[3]);

结果显示为:
定义全局异常处理器 | 带你读《SpringBoot实战教程》之十三

上一篇:zebra路由软件使用大全


下一篇:SAP扫盲系列之一:什么是SAP系统和应用服务器