弹簧引导作为微服务的便捷框架,在错误页面处理上也有一些新的处理,不同于之前的spring mvc的500页面处理是比较简单的,用java配置或者xml的形式,定义如下的bean即可
& lt;豆 类=皁rg.springframework.web.servlet.handler.SimpleMappingExceptionResolver”比; & lt;属性名=癳xceptionMappings”比; & lt; props> & lt;支撑关键=" org.apache.shiro.authz.UnauthenticatedException "祝辞页/403 & lt;/prop> & lt;支撑关键=" org.apache.shiro.authz.UnauthorizedException "祝辞页/403 & lt;/prop> & lt;支撑关键=皁rg.apache.shiro.authc.LockedAccountException”在页面/locked & lt;支撑关键=" java.lang.Throwable "祝辞页/500 & lt;/prop> & lt;/props> & lt;/property> & lt;/bean>
, 404年就比较特殊了,有2种方法可以参考:
1。先设置dispatcherServlet
@ bean 公共ServletRegistrationBean dispatcherRegistration (DispatcherServlet DispatcherServlet) { ServletRegistrationBean登记=new ServletRegistrationBean ( dispatcherServlet); dispatcherServlet.setThrowExceptionIfNoHandlerFound(真正的); 返回注册; }
再增加处理错误页面的处理程序,加上@ControllerAdvice注解
@ControllerAdvice 公开课GlobalControllerExceptionHandler { 公共静态最终字符串DEFAULT_ERROR_VIEW=耙?404”; @ExceptionHandler (value=https://www.yisu.com/zixun/NoHandlerFoundException.class) 公共ModelAndView defaultErrorHandler (HttpServletRequest点播、异常e){抛出异常 ModelAndView飞行器=new ModelAndView (); 飞行器。addObject(“例外”,e); 飞行器。addObject (“url”, req.getRequestURL ()); mav.setViewName (DEFAULT_ERROR_VIEW); 返回飞行器; } }
不过上面这种处理方法,会造成对js, css等资源的过滤,最好使用第二种方法
2。集成ErrorController
@ controller 公共类MainsiteErrorController实现ErrorController { 私有静态最终字符串ERROR_PATH="/错误”; @RequestMapping (value=https://www.yisu.com/zixun/ERROR_PATH) 公共字符串handleError () { 返回“页/404”; } @Override 公共字符串getErrorPath () {//TODO自动生成方法存根 返回ERROR_PATH; } } >之前以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
500年春天的引导下404错误页面处理的方法