springboot错误页⾯配置解决⽅案
这篇⽂章主要介绍了spring boot 错误页⾯配置解决⽅案,⽂中通过⽰例代码介绍的⾮常详细,对⼤家的学习或者⼯作具有⼀定的参考学习价值,需要的朋友可以参考下
如果访问了错误的路径,或者后台报错
如果没有⼀个统⼀的页⾯!
或者说页⾯上展⽰⼀堆报错信息,既影响美观,⼜对⽤户不友好!
那么如何配置?
定义 ErrorPageConfig,配置错误状态与对应访问路径
@Component
public class ErrorPageConfig implements ErrorPageRegistrar {
private static final Logger logger = Logger(ErrorPageConfig.class);
@Override
public void registerErrorPages(ErrorPageRegistry errorPageRegistry) {
//1、按错误的类型显⽰错误的⽹页
//错误类型为404,不到⽹页的,默认显⽰404.html⽹页
ErrorPage e404 = new ErrorPage(HttpStatus.NOT_FOUND, "/error/404");
//错误类型为500,表⽰服务器响应错误,默认显⽰500.html⽹页
ErrorPage e500 = new ErrorPage(HttpStatus.INTERNAL_SERVER_ERROR, "/error/500");
errorPageRegistry.addErrorPages(e404, e500);
}
}
定义控制器,专门⽤于ErrorPageConfig 跳转路径
@Controller
@RequestMapping("/error")
public class ErrorController {
/**
* 404页⾯
*/
@GetMapping(value = "/404")
public String error_404() {
return "comm/error_404";
}
/**
* 500页⾯
*/
@GetMapping(value = "/500")
public String error_500() {
return "comm/error_500";
}
}
在comm⽂件夹下新建页⾯
访问不存在的地址,或者后台报错,即可展⽰友好页⾯
参考链接不到了。
其实,还有bug。
⽐如访问 localhost:9090/admin/1 没有直接报404,反⽽真的去了这个路径
与后台admin开头的要跳转到登录页⾯发⽣冲突,导致500错误
springboot和过滤器⽐如直接访问 localhost:9090/error ,会报⼀个909错误,再次回到原⽣的报错页⾯
以上就是本⽂的全部内容,希望对⼤家的学习有所帮助,也希望⼤家多多⽀持。