java全局异常处理

在javaEE开发过程中,异常处理是必不可少的,为了不直接给前端500系统错误的状态码,一般对于可预知的异常,我们会自定义异常,但是对于不可预知的异常,我们要怎么处理呢?下面 我们就此问题聊聊。

定义全局异常处理类

@Component
@ControllerAdvice
public class GlobalExceptionHandler {
    private static Logger logger = LoggerFactory.getLogger(GlobalExceptionHandler.class);

    /**
     * @Description: 捕获没有被其他地方捕获的异常
     * @param: RuntimeException
     * @Author:        LXJ
     * @CreateDate:     2018/12/7 15:18
     * @Version:        1.0
     */
    @ExceptionHandler
    @ResponseBody
    public String exceptionHandle(RuntimeException e){
        return ApiResult.result(ApiStatus.GL99990500,"系统出错!").toString();
    }
    /**
     * @Description: 导入异常处理
     * @param: MyException
     * @Author:        LXJ
     * @CreateDate:     2018/12/7 15:18
     * @Version:        1.0
     */
    @ExceptionHandler(value = MyException.class)
    @ResponseBody
    public String mYExceptionHandler(MyException e){
        System.out.println(e.getMessage()+"**********");
        return ApiResult.result(ApiStatus.GL99990100,e.getMessage()).toString();
    }
}

你可能感兴趣的:(Java小知识)