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

}
目录
相关文章
|
6月前
|
JSON 前端开发 Java
【十八】springboot实现自定义全局异常处理
【十八】springboot实现自定义全局异常处理
124 1
【十八】springboot实现自定义全局异常处理
|
6月前
|
Java
springboot全局自定义异常
springboot全局自定义异常
|
6月前
|
JSON Java 数据格式
Springboot自定义全局异常处理
BasicErrorController是Spring Boot中默认提供的用于处理基本错误的控制器。它实现了ErrorController接口,用于处理在应用程序中发生的错误,例如404 Not Found等。此种方式是通过请求转发实现的,出现异常时,会转发到请求到/error,该接口对异常进行处理返回,是最符合全局异常处理的。
105 2
|
JSON 前端开发 Java
一张思维导图带你学会Springboot创建全局异常、自定义异常
一张思维导图带你学会Springboot创建全局异常、自定义异常
169 0
|
Java 开发者 Spring
Spring Boot 中关于自定义异常处理的套路!
Spring Boot 中关于自定义异常处理的套路!
|
安全 Java 微服务
SpringBoot 中如何优雅地处理异常,包括异常处理机制、全局异常处理器、自定义异常?
SpringBoot 中如何优雅地处理异常,包括异常处理机制、全局异常处理器、自定义异常?
306 0
|
JSON 前端开发 Java
《springboot实战》第六章 实现自定义全局异常处理
《springboot实战》第六章 实现自定义全局异常处理
211 0
|
Java
SpringBoot异常统一处理,包括系统异常、自定义异常和参数检验异常
SpringBoot异常统一处理,包括系统异常、自定义异常和参数检验异常
382 0
|
JSON Java 应用服务中间件
springboot自定义异常界面跳转
默认情况下,Spring Boot提供/error处理所有错误的映射 机器客户端,它将生成JSON响应,其中包含错误,HTTP状态和异常消息的详细信息。对于浏览器客户端,响应一个“ whitelabel”错误视图,以HTML格式呈现相同的数据
|
安全 Java 数据库
SpringBoot+拦截器+自定义异常+自定义注解+全局异常处理简单实现接口权限管理
提到权限管理这块肯定很多人第一想到的就是Springboot Security或者是Shiro安全框架,但本文介绍的并不是这两种,不是因为他们不好用,实在是自己太懒了,我觉得一个拦截器加上其他的一些处理就能满足项目的需求,我又何必去多用一个框架呢,这篇文章也不是去对比谁好谁坏,各位自行抉择。
84115 6