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;
    }

}
目录
相关文章
|
2月前
|
JSON 前端开发 Java
【十八】springboot实现自定义全局异常处理
【十八】springboot实现自定义全局异常处理
56 1
【十八】springboot实现自定义全局异常处理
|
2月前
|
Java
springboot全局自定义异常
springboot全局自定义异常
|
2月前
|
JSON Java 数据格式
Springboot自定义全局异常处理
BasicErrorController是Spring Boot中默认提供的用于处理基本错误的控制器。它实现了ErrorController接口,用于处理在应用程序中发生的错误,例如404 Not Found等。此种方式是通过请求转发实现的,出现异常时,会转发到请求到/error,该接口对异常进行处理返回,是最符合全局异常处理的。
|
11月前
|
JSON 前端开发 Java
一张思维导图带你学会Springboot创建全局异常、自定义异常
一张思维导图带你学会Springboot创建全局异常、自定义异常
143 0
|
11月前
|
Java 开发者 Spring
Spring Boot 中关于自定义异常处理的套路!
Spring Boot 中关于自定义异常处理的套路!
|
安全 Java 微服务
SpringBoot 中如何优雅地处理异常,包括异常处理机制、全局异常处理器、自定义异常?
SpringBoot 中如何优雅地处理异常,包括异常处理机制、全局异常处理器、自定义异常?
178 0
|
JSON 前端开发 Java
《springboot实战》第六章 实现自定义全局异常处理
《springboot实战》第六章 实现自定义全局异常处理
147 0
|
Java
SpringBoot异常统一处理,包括系统异常、自定义异常和参数检验异常
SpringBoot异常统一处理,包括系统异常、自定义异常和参数检验异常
349 0
|
JSON Java 应用服务中间件
springboot自定义异常界面跳转
默认情况下,Spring Boot提供/error处理所有错误的映射 机器客户端,它将生成JSON响应,其中包含错误,HTTP状态和异常消息的详细信息。对于浏览器客户端,响应一个“ whitelabel”错误视图,以HTML格式呈现相同的数据
|
JSON 前端开发 JavaScript
SpringBoot系列教程web篇之自定义异常处理HandlerExceptionResolver
关于Web应用的全局异常处理,上一篇介绍了ControllerAdvice结合@ExceptionHandler的方式来实现web应用的全局异常管理; 本篇博文则带来另外一种并不常见的使用方式,通过实现自定义的HandlerExceptionResolver,来处理异常状态
455 0
SpringBoot系列教程web篇之自定义异常处理HandlerExceptionResolver