返回顶部
首页 > 资讯 > 后端开发 > Python >SpringBoot 错误页面跳转方式
  • 848
分享到

SpringBoot 错误页面跳转方式

2024-04-02 19:04:59 848人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

目录SpringBoot错误页面跳转一、新增配置类二、错误页面跳转控制器springBoot自定义错误页面一、错误页面二、处理过程SpringBoot错误页面跳转 SpringBoo

SpringBoot错误页面跳转

SpringBoot实现mvc 404、500等错误时跳转自定义页面

一、新增配置类

package com.study.demo.config;
import org.springframework.boot.WEB.server.ErrorPage;
import org.springframework.boot.web.server.ErrorPageReGIStrar;
import org.springframework.boot.web.server.ErrorPageRegistry;
import org.springframework.Http.httpstatus;
import org.springframework.stereotype.Component;

@Component
public class ErrorPageConfig implements ErrorPageRegistrar {
    @Override
    public void registerErrorPages(ErrorPageRegistry registry) {
        ErrorPage error400Page = new ErrorPage(HttpStatus.BAD_REQUEST, "/errorPageController/error_400");
        ErrorPage error401Page = new ErrorPage(HttpStatus.UNAUTHORIZED, "/errorPageController/error_401");
        ErrorPage error404Page = new ErrorPage(HttpStatus.NOT_FOUND, "/errorPageController/error_404");
        ErrorPage error500Page = new ErrorPage(HttpStatus.INTERNAL_SERVER_ERROR, "/errorPageController/error_500");
        registry.addErrorPages(error400Page,error401Page,error404Page,error500Page);
    }
}

二、错误页面跳转控制器

package com.study.demo.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
@RequestMapping("/errorPageController")
public class ErrorPageController {
    @RequestMapping("/error_{errorCode}")
    public String error(@PathVariable int errorCode){
        String responseMsg;
        switch (errorCode) {
            case 400: responseMsg = "/400.html"; break;
            case 401: responseMsg = "/401.html"; break;
            case 404: responseMsg = "/404.html"; break;
            case 500: responseMsg = "/500.html"; break;
            default: responseMsg = "/404.html"; break;
        }
        return responseMsg;
    }
}

SpringBoot自定义错误页面

一、错误页面

请求出现错误时,跳转到自定义的页面中,比如404,假如没对错误进行处理,那么系统默认的页面与项目的页面会有很大的不搭。

解决:在默认的静态路径下,新建error文件,里面放入错误页面,页面命名为错误状态码,如:404.html,也可以命名为4xx.html,但如果两个文件同时存在,那么会优先展示404.html

注:静态路径为

private static final String[] CLASSPATH_RESOURCE_LOCATIONS = new String[]{
"classpath:/META-INF/resources/",
 "classpath:/resources/", 
 "classpath:/static/", 
 "classpath:/public/"
 };
 // 注:还有一个默认的根路径    "/"

二、处理过程

出现4xx或5xx错误时,ErrorPageCustomizer生效,就会来到/error请求,就会被BasicErrorController处理。

//在DefaultErrorViewResolver中有一段代码
// 处理4xx和5xx的请求
static {
    Map<Series, String> views = new EnumMap(Series.class);
    views.put(Series.CLIENT_ERROR, "4xx");
    views.put(Series.SERVER_ERROR, "5xx");
    SERIES_VIEWS = Collections.unmodifiableMap(views);
}
// 解析,并会跳转到error/错误状态码; 页面中
private ModelAndView resolve(String viewName, Map<String, Object> model) {
    String errorViewName = "error/" + viewName;
    TemplateAvailabilityProvider provider = this.templateAvailabilityProviders.getProvider(errorViewName, this.applicationContext);
    // 对是否有模板引擎做出相应的视图处理
    return provider != null ? new ModelAndView(errorViewName, model) : this.resolveResource(errorViewName, model);
}

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。

--结束END--

本文标题: SpringBoot 错误页面跳转方式

本文链接: https://lsjlt.com/news/139541.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • SpringBoot 错误页面跳转方式
    目录SpringBoot错误页面跳转一、新增配置类二、错误页面跳转控制器SpringBoot自定义错误页面一、错误页面二、处理过程SpringBoot错误页面跳转 SpringBoo...
    99+
    2024-04-02
  • vue页面跳转方式有哪些
    Vue页面跳转方式有以下几种:1、router-link组件在Vue Router中,可以使用router-link组件实现页面跳转...
    99+
    2023-05-13
    vue页面跳转方式 vue
  • vue3页面跳转的两种方式
    目录1、标签内 router-link跳转2、编程式路由导航vue3的页面跳转有两种方式,第一种是标签内跳转,第二种是编程式路由导航 1、 <router-link to='/...
    99+
    2023-05-20
    vue3页面跳转 vue跳转页面
  • 小程序的页面跳转方式
    102. 小程序的页面跳转方式 小程序是一种快速发展的应用形式,为用户提供了便捷的功能和交互体验。其中,页面跳转是小程序中常用的功能之一,本文将介绍小程序的页面跳转方式,并提供代码示例,帮助读者更好地理解和实现页面跳转。 一、小程序页面跳转...
    99+
    2023-08-20
    小程序
  • SpringBoot自定义错误页面方式有哪些
    这篇文章主要讲解了“SpringBoot自定义错误页面方式有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“SpringBoot自定义错误页面方式有哪些”吧!以前web.xml方式先来看下...
    99+
    2023-06-21
  • jquery实现登陆跳转页面跳转页面跳转
    在Web开发中,很常见的一种需求是用户通过输入账号和密码完成登陆操作后,跳转到不同的页面。这一过程中需要用到Javascript库中非常流行的jQuery来实现。jQuery是一个快速、简洁的JavaScript库,其设计思想是“写更少,做...
    99+
    2023-05-25
  • 微信小程序页面跳转方式+跳转小程序
    一. 跳转页面方法 1.跳转到 tabBar 页面 wx.switchTab({ url: '/index'}) 2.跳转到其他页面(非tabBar页) //redirectTo方法(会关闭当前页面...
    99+
    2023-09-28
    小程序 微信小程序
  • mui中有哪些页面跳转方式
    这篇文章主要介绍mui中有哪些页面跳转方式,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!【几种打开页面的方式】1.初始化时创建子页面2.直接打开新页面3.预加载页面【示例】1.初始化...
    99+
    2024-04-02
  • SpringBoot多种自定义错误页面方式小结
    目录以前web.xml方式SpringBoot中实现方式1.实现EmbeddedServletContainerCustomizer的bean2.通过拦截器方式3.自定义静态erro...
    99+
    2024-04-02
  • vue中页面跳转的方式有哪些
    在vue中实现页面跳转的方式有:1.使用a标签跳转;2.使用this.$router.push()函数跳转;3.使用router-link标签跳转;在vue中实现页面跳转的方式有以下几种使用a标签跳转<a href=&quo...
    99+
    2024-04-02
  • JavaScript实现页面跳转的八种方式
    整理一下JavaScript八种跳转方式,欢迎评论补充! 第一种方法: <script> window.location.replace('http://www....
    99+
    2024-04-02
  • javascript中有哪些页面跳转的方式
    这篇文章将为大家详细讲解有关javascript中有哪些页面跳转的方式,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。JavaScript的特点1.JavaScript主要用来向HTML页面添...
    99+
    2023-06-14
  • PyQt5页面跳转问题及解决方式
    目录问题1:如何实现页面间跳转问题2:实现定义函数传参功能问题3:sumodify() takes 2 positional arguments but 3 were given问题...
    99+
    2023-01-06
    PyQt5页面跳转 PyQt5 界面跳转
  • golang 页面跳转
    最近想学习golang,发现golang不仅是一门语言,还可以用来进行web开发。在这里我想分享一下关于golang页面跳转的知识。在golang中,我们可以使用net/http来实现web编程,其中包括页面跳转。下面是具体实现步骤:1.导...
    99+
    2023-05-19
  • JavaScript实现页面跳转的方式有哪些
    JavaScript实现页面跳转的方式有以下几种:1. 使用location对象的方法:- `location.href = url...
    99+
    2023-08-08
    JavaScript
  • ASP实现页面跳转的方式有哪些
    ASP(Active Server Pages)是一种用于网页开发的服务器端脚本语言,可以通过多种方式实现页面跳转。以下是几种常见的...
    99+
    2023-08-08
    ASP
  • H5页面跳转小程序的三种方式
    文章目录 前言一、web-view标签返回小程序1.小程序启动页面只写web-view标签跳转到授权页面。2.编写auth.html3、把auth.html放到服务器就可以测试访问,打开小程序默认进入启动页面中的webview跳转到...
    99+
    2023-08-16
    小程序 微信小程序 前端 微信 html5
  • PHP页面跳转教程:如何实现页面跳转到新页面
    标题:PHP页面跳转教程:如何实现页面跳转到新页面,需要具体代码示例 在Web开发中,页面跳转是一个常见的操作,通过页面跳转可以实现用户在不同页面间进行流畅的切换,提升用户体验和网站功...
    99+
    2024-03-04
    教程 php 页面跳转 a标签
  • html跳转页面怎么跳
    要在 html 中跳转页面,有四种方法:1. 使用 标签创建超链接。2. 使用 标签设置重定向指令。3. 使用 window.location 对象动态跳转页面。4. 使用 wind...
    99+
    2024-05-16
  • android 3d页面跳转
    package cn.com; import android.app.Activity;import android.os.Bundle;import android.view.View;import android.view.ViewGr...
    99+
    2023-01-31
    跳转 页面 android
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作