为了账号安全,请及时绑定邮箱和手机立即绑定

java入门014~springboot自定义错误页面 并重定向到首页

上一节给大家讲解了springboot的全局异常处理,开发者可以根据实际情况返回不同的页面,但是这种全局异常处理的方式一般用来处理应用级别的异常,有一些容器级别的错误就处理不了,比如Filter中抛出的异常,使用controllerAdvice定义的全局异常处理机制就没有办法处理了。因此springboot中对于异常的处理还有另外的方式。这就是本节要介绍的内容。

如果上一节的全局异常处理你还没有看过,可以点击下面链接查看。也可以到老师的专栏里查看历史文章。

老规矩,先看效果图

可以看出,我们在发生错误时,跳转到了自定义的404错误页面,然后隔5秒后,会重新跳转到我们的首页。假设我们的首页就是 @头条号 首页

本节知识点

  • 1,自定义错误页面

  • 2,错误页面重定向到首页

一,默认的错误页面

其实在springboot中,默认情况下,如果用户在发起请求时发生404错误,springboot会有一个默认的页面展示给用户,如下图。

在这里插入图片描述

如果请求时发生500错误,也会有默认的页面展示给用户的,如下图。

在这里插入图片描述

但是这些都是自带的默认的错误页面,用户看起来不是很友好。所以我们接下来教大家如何自定义错误页面。

二,自定义错误页面

1,我们需要在resources目录下,新建一个error目录,然后在error目录下添加一个404.html页面。这样我们再发生404错误时,就会跳转到我们这个自己定义的错误页面了。

在这里插入图片描述

2,在404.html里写下面的代码

在这里插入图片描述

这样我们自定义的错误页面就定义好了,下面给大家讲解我们如何在进入错误页面后,重定向到我们的首页。我们总不能让用户一直看这个错误页面吧。

三,错误页面重定向到首页

重定向就是重新打开的意思。我们从错误页面重定向到首页,就是从错误页面跳转到我们的首页。

重定向有下面两种实现方式

1,通过定义meta属性

2,通过在js使用location.href实现重定向

在这里插入图片描述

通过上图我们可以看到两种重定向的使用方法。
完整代码如下:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <!--    <meta http-equiv="Refresh" content="5;url=https://www.toutiao.com/"/>-->
    <title>404错误</title>
    <script type="text/javascript">
        window.onload = function () {
            var i = 4;
            var tim = document.getElementById("timers");
            var timer = setInterval(function () {
                if (i == -1) {
                    //第二种跳转方式
                    window.location.href = "https://www.toutiao.com/";
                    clearInterval(timer);
                } else {
                    tim.innerHTML = i;
                    --i;
                }
            }, 1000);
        }
    </script>
</head>
<body>
404错误。
<p>您将在 <span id="timers" style="color: red; font-size: 5rem">5</span> 秒内跳转到首页。</p>
<p><a href="https://www.toutiao.com/">首页</a></p>
<p>如果超过 5 秒后您仍然看到本消息,请点击上面的首页链接。</p>
</body>
</html>
点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
全栈工程师
手记
粉丝
252
获赞与收藏
1021

关注作者,订阅最新文章

阅读免费教程

  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消