SpringBoot自定义异常处理

简介: 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;
    }

}
目录
相关文章
|
10月前
|
JSON 前端开发 Java
【十八】springboot实现自定义全局异常处理
【十八】springboot实现自定义全局异常处理
164 1
【十八】springboot实现自定义全局异常处理
|
10月前
|
Java
springboot全局自定义异常
springboot全局自定义异常
|
10月前
|
JSON Java 数据格式
Springboot自定义全局异常处理
BasicErrorController是Spring Boot中默认提供的用于处理基本错误的控制器。它实现了ErrorController接口,用于处理在应用程序中发生的错误,例如404 Not Found等。此种方式是通过请求转发实现的,出现异常时,会转发到请求到/error,该接口对异常进行处理返回,是最符合全局异常处理的。
146 2
|
JSON 前端开发 Java
一张思维导图带你学会Springboot创建全局异常、自定义异常
一张思维导图带你学会Springboot创建全局异常、自定义异常
205 0
|
Java 开发者 Spring
Spring Boot 中关于自定义异常处理的套路!
Spring Boot 中关于自定义异常处理的套路!
|
安全 Java 微服务
SpringBoot 中如何优雅地处理异常,包括异常处理机制、全局异常处理器、自定义异常?
SpringBoot 中如何优雅地处理异常,包括异常处理机制、全局异常处理器、自定义异常?
347 0
|
JSON 前端开发 Java
《springboot实战》第六章 实现自定义全局异常处理
《springboot实战》第六章 实现自定义全局异常处理
243 0
|
Java
SpringBoot异常统一处理,包括系统异常、自定义异常和参数检验异常
SpringBoot异常统一处理,包括系统异常、自定义异常和参数检验异常
411 0
|
安全 Java 数据库
SpringBoot+拦截器+自定义异常+自定义注解+全局异常处理简单实现接口权限管理
提到权限管理这块肯定很多人第一想到的就是Springboot Security或者是Shiro安全框架,但本文介绍的并不是这两种,不是因为他们不好用,实在是自己太懒了,我觉得一个拦截器加上其他的一些处理就能满足项目的需求,我又何必去多用一个框架呢,这篇文章也不是去对比谁好谁坏,各位自行抉择。
84137 6
|
JSON 前端开发 JavaScript
SpringBoot系列教程web篇之自定义异常处理HandlerExceptionResolver
关于Web应用的全局异常处理,上一篇介绍了ControllerAdvice结合@ExceptionHandler的方式来实现web应用的全局异常管理; 本篇博文则带来另外一种并不常见的使用方式,通过实现自定义的HandlerExceptionResolver,来处理异常状态
515 0
SpringBoot系列教程web篇之自定义异常处理HandlerExceptionResolver