【Spring Boot 从入门到放弃】自定义404错误页面

我们经常会遇到输入没有的地址的时候回报一个404的页面,这篇博客就是来解决这个问题

image.png

Spring Boot默认使用嵌入式Tomcat,默认没有页面来处理404等常见错误。因此,为了给用户最佳的使用体验,404等常见错误需要我们自定义页面来处理。

需要用到

org.springframework.boot.context.embedded.EmbeddedServletContainerCustomizer

类来实现该功能,在Spring Boot的启动类(main方法所在类)当中,添加如下代码:

@Bean
public EmbeddedServletContainerCustomizer containerCustomizer() {

    return new EmbeddedServletContainerCustomizer() {
        @Override
        public void customize(ConfigurableEmbeddedServletContainer container) {

            ErrorPage error401Page = new ErrorPage(HttpStatus.UNAUTHORIZED, "/401.html");
            ErrorPage error404Page = new ErrorPage(HttpStatus.NOT_FOUND, "/404.html");
            ErrorPage error500Page = new ErrorPage(HttpStatus.INTERNAL_SERVER_ERROR, "/500.html");

            container.addErrorPages(error401Page, error404Page, error500Page);
        }
    };
}

这里只是用了401、404、500 其实在HttpStatus这个类里面有很多状态可以拦截,需要的可以自己看一下


image.png
注意不要导错包 导spring boot的包

错误页面需要放在Spring Boot web应用的static内容目录下,它的默认位置是:src/main/resources/static,如下图所示:


image.png

这时候我们随便输入一串字符


image.png

成功被拦截了。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,948评论 18 139
  • Spring Boot 参考指南 介绍 转载自:https://www.gitbook.com/book/qbgb...
    毛宇鹏阅读 46,958评论 6 342
  • 一直想写点东西来纪念我的婚礼抑或蜜月情况,苦于自己的懒惰或者笔生,一直未有最新的消息向朋友们汇报,今天终于下定决...
    寒凌子阅读 292评论 0 2
  • 目录:不长不短,刚好刻骨铭心 上一章:辰宇救了夏琉璃 文/陈康慧 “辰宇,到现在你还不知道我对你的心意吗?我比她更...
    陈康慧阅读 541评论 7 12
  • 普通而平凡! 棕色与白色 好吃且营养的蛋要来自于散养的鸡. 煎蛋:油热微烟,是时候下蛋!
    Taofca阅读 171评论 0 0