自定义异常解析器

@Order(value= Ordered.HIGHEST_PRECEDENCE)  //优先级,数字越小优先级越高

@Component

@Order(value= Ordered.HIGHEST_PRECEDENCE)  //优先级,数字越小优先级越高
@Component
public class CustomerHandlerExceptionResolver implements HandlerExceptionResolver {
    @Override
    public ModelAndView resolveException(HttpServletRequest request,
                                         HttpServletResponse response,
                                         Object handler, Exception ex) {

        try {
            response.sendError(511,"我喜欢的错误");
        } catch (IOException e) {
            e.printStackTrace();
        }
        return new ModelAndView();
    }
}

自定义异常解析器会被默认的解析器解析,所以需要使用优先级

 

当出现异常后,被自己定义的异常解析器接管,然后使用response.sendError 手动的发送异常信息,

参数中有个ex,这个应该就是当前报出的异常,就可以进行判断了,

posted @ 2022-09-13 19:29  咖喱给给啊  阅读(32)  评论(0)    收藏  举报