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

 更新时间:2019年10月23日 09:50:03   作者:正义的伙伴!  
这篇文章主要介绍了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项目中控制器的响应结果深入分析

    这篇文章主要介绍了SpringMVC框架和SpringBoot项目中控制器的响应结果,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习吧
    2022-12-12
  • SpringBoot实现HTTP调用的7 种方式

    SpringBoot实现HTTP调用的7 种方式

    本文主要介绍了SpringBoot实现HTTP调用的7 种方式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2025-04-04
  • 浅谈十个常见的Java异常出现原因

    浅谈十个常见的Java异常出现原因

    这篇文章主要介绍了十个常见的Java异常出现原因,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-03-03
  • java多线程编程之管道通信详解

    java多线程编程之管道通信详解

    这篇文章主要为大家详细介绍了java多线程编程之线程间的通信,探讨使用管道进行通信,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-10-10
  • mybatis中BigDecimal中的0存为null的坑及解决

    mybatis中BigDecimal中的0存为null的坑及解决

    在使用MyBatis进行数据库操作时,若Java中属性类型为BigDecimal且值为0,插入数据库时可能会变为null,而不是0,这个问题可能是由于MyBatis在处理BigDecimal类型时的弱类型判断导致的,当BigDecimal变量与空字符串进行比较时,MyBatis可能将其视为null
    2024-10-10
  • Java 实战练习之网上电商项目的实现

    Java 实战练习之网上电商项目的实现

    读万卷书不如行万里路,只学书上的理论是远远不够的,只有在实战中才能获得能力的提升,本篇文章手把手带你用java+vue+Springboot+ssm+mysql+maven+redis实现一个网上电商项目,大家可以在过程中查缺补漏,提升水平
    2021-11-11
  • Java8 Stream flatmap中间操作用法解析

    Java8 Stream flatmap中间操作用法解析

    这篇文章主要介绍了Java8 Stream flatmap中间操作用法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-07-07
  • Java手动配置线程池过程详解

    Java手动配置线程池过程详解

    这篇文章主要介绍了Java手动配置线程池过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-05-05
  • 如何利用 Either 和 Option 进行函数式错误处理

    如何利用 Either 和 Option 进行函数式错误处理

    这篇文章主要介绍了如何利用 Either 和 Option 进行函数式错误处理。在 Java 中,错误的处理在传统上由异常以及创建和传播异常的语言支持进行。但是,如果不存在结构化异常处理又如何呢?,需要的朋友可以参考下
    2019-06-06
  • Netty分布式server启动流程Nio创建源码分析

    Netty分布式server启动流程Nio创建源码分析

    这篇文章主要介绍了Netty分布式server启动流程Nio创建源码分析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-03-03

最新评论