spring boot 错误页面配置解决方案
这篇文章主要介绍了spring boot 错误页面配置解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
如果访问了错误的路径,或者后台报错
如果没有一个统一的页面!
或者说页面上展示一堆报错信息,既影响美观,又对用户不友好!
那么如何配置?
定义 ErrorPageConfig,配置错误状态与对应访问路径
@Component
public class ErrorPageConfig implements ErrorPageRegistrar {
private static final Logger logger = LoggerFactory.getLogger(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文件夹 下新建页面

访问不存在的地址,或者后台报错,即可展示友好页面

参考链接找不到了。
感谢:https://github.com/ZHENFENG13
其实,还有bug。
- 比如访问 http://localhost:9090/admin/1 没有直接报404,反而 真的去找了这个路径
- 与后台admin开头的要跳转到登录页面拦截器发生冲突,导致500错误
- 比如直接访问 http://localhost:9090/error ,会报一个909错误,再次回到原生的报错页面
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
相关文章
SpringMVC框架和SpringBoot项目中控制器的响应结果深入分析
这篇文章主要介绍了SpringMVC框架和SpringBoot项目中控制器的响应结果,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习吧2022-12-12
mybatis中BigDecimal中的0存为null的坑及解决
在使用MyBatis进行数据库操作时,若Java中属性类型为BigDecimal且值为0,插入数据库时可能会变为null,而不是0,这个问题可能是由于MyBatis在处理BigDecimal类型时的弱类型判断导致的,当BigDecimal变量与空字符串进行比较时,MyBatis可能将其视为null2024-10-10
如何利用 Either 和 Option 进行函数式错误处理
这篇文章主要介绍了如何利用 Either 和 Option 进行函数式错误处理。在 Java 中,错误的处理在传统上由异常以及创建和传播异常的语言支持进行。但是,如果不存在结构化异常处理又如何呢?,需要的朋友可以参考下2019-06-06


最新评论