当前位置 : 主页 > 编程语言 > java >

spring boot 错误页面配置解决方案

来源:互联网 收集:自由互联 发布时间:2021-05-13
这篇文章主要介绍了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错误,再次回到原生的报错页面

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持自由互联。

网友评论