zoukankan      html  css  js  c++  java
  • SpringBoot自定义异常处理

    全局异常处理

    @ControllerAdvice
    @RestController
    public class GlobalExceptionInterceptor {
    ​
        //Exception异常
        @ExceptionHandler(value = Exception.class)
        @ResponseBody
        public Result exceptionHandler(Exception e){
            e.printStackTrace();
            LogUtil.writeLog("error","log",e.getMessage()+e.getStackTrace());
            Result result = Result.errorResult();
            if (e.getClass().equals(HttpMediaTypeNotSupportedException.class)){
                result.setCode(-981);
                result.setMsg("请求参数格式错误");
            }else{
                result.setCode(-998);
                result.setMsg("系统执行发生错误");
            }
    ​
            return result;
        }
    ​
        //运行时异常
        @ExceptionHandler(value = RuntimeException.class)
        @ResponseBody
        public Result exceptionHandler(RuntimeException e){
            e.printStackTrace();
            LogUtil.writeLog("error","log",e.getMessage()+e.getStackTrace());
            Result result = Result.errorResult();
            result.setCode(-997);
            result.setMsg("系统运行发生错误");
            return result;
        }
    ​
    }

    全局404拦截

    @Component
    public class ResponseStatusInterceptor implements HandlerInterceptor {
    ​
        @Override
        public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
            if(response.getStatus()==404){
                response.sendRedirect(request.getContextPath() + "/frame/error/404");
            }
            return true;
        }
    ​
    }
  • 相关阅读:
    PHP变量及其操作
    PHP基本语法
    PHP安装与配置
    MySQL安装与配置
    获取一个目录的父目录
    Image控件播放 GIF文件
    保存网页MHT
    注册全局热键
    使用多线程实现打字效果
    Delphi 调用外部程序并等待其运行结束
  • 原文地址:https://www.cnblogs.com/yanpeng19940119/p/14965888.html
Copyright © 2011-2022 走看看