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;
        }
    ​
    }
  • 相关阅读:
    ORACLE之常用FAQ V1.0二(构架系统) (1)
    如何快速杀去世占用过多本钱(CPU,内存)的数据库历程
    Eclipse快捷键大全
    (收藏)STL MAP 详解
    怎么在安装目录下创建一个文件
    MFC自绘属性的总结
    文件夹总结
    公元纪年转换为干支纪年
    重载运算符operator
    VS2005快捷键大全
  • 原文地址:https://www.cnblogs.com/yanpeng19940119/p/14965888.html
Copyright © 2011-2022 走看看