1 .初始化bean时,配置类 ErrorMvcAutoConfiguration
1当@Bean 会注册 BasicErrorController 到容器中;
2.可以自定义@ControllerAdvice myExceptionHandler 方法上@ExceptionHandler(class)
在抛出指定异常时;会执行此方法;可以自定义输出map–json格式数据;还可以把数据加入到HttpServletRequest作用域中 设置setAttributer("","");
转发到 url访问错误页面 error;
BasicErrorController – 的方法 如果是浏览器请求过来的带有text.html—则执行
errorHtml 方法
如果是accept;没有带请求头;;则访问 error 方法 返回json数据; 中间会调用DefaultErrorAttributes 类 定义map json返回 数据;
-errorAttributes
我们可以自定义类继承 DefaultErrorAttributes 这样根据 @ConditionalOnMissingBean(
value = {ErrorAttributes.class} 不就创建 DefaultErrorAttributes bean,会加入到
自定义的 MyErrorProperties 类,我们再实现 getErrorAttributes方法 调用父类之前方法,再自定义map一些方法,然后把之前定义到HttpsesionRequest里的数据定义到map中;
这样就实现我们自定义到页面的一些数据,访问路径teymeleaf 下的error/5xx 开头的页面.或者是json数据;
3.可以自定义@Component MyErrorProperties 继承 extends 系统定义好的一部分异常default
如果想自定义json数据的异常类.就加上@Requestbody -
如果自定义页面提示自定义信息, 可以在拦截定义map集合. 然后把集合类的传入到请求类中, 通过注册bean的类 获得接受到 然后加入到定义大集合中,显示到页面上;