广告
返回顶部
首页 > 资讯 > 后端开发 > 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://www.lsjlt.com/news/139541.html(转载时请注明来源链接)

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

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • SpringBoot 错误页面跳转方式
    目录SpringBoot错误页面跳转一、新增配置类二、错误页面跳转控制器SpringBoot自定义错误页面一、错误页面二、处理过程SpringBoot错误页面跳转 SpringBoo...
    99+
    2022-11-13
  • SpringBoot自定义错误页面方式有哪些
    这篇文章主要讲解了“SpringBoot自定义错误页面方式有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“SpringBoot自定义错误页面方式有哪些”吧!以前web.xml方式先来看下...
    99+
    2023-06-21
  • 小程序的页面跳转方式
    102. 小程序的页面跳转方式 小程序是一种快速发展的应用形式,为用户提供了便捷的功能和交互体验。其中,页面跳转是小程序中常用的功能之一,本文将介绍小程序的页面跳转方式,并提供代码示例,帮助读者更好地理解和实现页面跳转。 一、小程序页面跳转...
    99+
    2023-08-20
    小程序
  • vue3页面跳转的两种方式
    目录1、标签内 router-link跳转2、编程式路由导航vue3的页面跳转有两种方式,第一种是标签内跳转,第二种是编程式路由导航 1、 <router-link to='/...
    99+
    2023-05-20
    vue3页面跳转 vue跳转页面
  • vue页面跳转方式有哪些
    Vue页面跳转方式有以下几种:1、router-link组件在Vue Router中,可以使用router-link组件实现页面跳转...
    99+
    2023-05-13
    vue页面跳转方式 vue
  • SpringBoot多种自定义错误页面方式小结
    目录以前web.xml方式SpringBoot中实现方式1.实现EmbeddedServletContainerCustomizer的bean2.通过拦截器方式3.自定义静态erro...
    99+
    2022-11-12
  • 微信小程序页面跳转方式+跳转小程序
    一. 跳转页面方法 1.跳转到 tabBar 页面 wx.switchTab({ url: '/index'}) 2.跳转到其他页面(非tabBar页) //redirectTo方法(会关闭当前页面...
    99+
    2023-09-28
    小程序 微信小程序
  • mui中有哪些页面跳转方式
    这篇文章主要介绍mui中有哪些页面跳转方式,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!【几种打开页面的方式】1.初始化时创建子页面2.直接打开新页面3.预加载页面【示例】1.初始化...
    99+
    2022-10-19
  • vue中页面跳转的方式有哪些
    在vue中实现页面跳转的方式有:1.使用a标签跳转;2.使用this.$router.push()函数跳转;3.使用router-link标签跳转;在vue中实现页面跳转的方式有以下几种使用a标签跳转<a href=&quo...
    99+
    2022-10-05
  • JavaScript实现页面跳转的八种方式
    整理一下JavaScript八种跳转方式,欢迎评论补充! 第一种方法: <script> window.location.replace('http://www....
    99+
    2022-11-13
  • PyQt5页面跳转问题及解决方式
    目录问题1:如何实现页面间跳转问题2:实现定义函数传参功能问题3:sumodify() takes 2 positional arguments but 3 were given问题...
    99+
    2023-01-06
    PyQt5页面跳转 PyQt5 界面跳转
  • javascript中有哪些页面跳转的方式
    这篇文章将为大家详细讲解有关javascript中有哪些页面跳转的方式,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。JavaScript的特点1.JavaScript主要用来向HTML页面添...
    99+
    2023-06-14
  • H5页面跳转小程序的三种方式
    文章目录 前言一、web-view标签返回小程序1.小程序启动页面只写web-view标签跳转到授权页面。2.编写auth.html3、把auth.html放到服务器就可以测试访问,打开小程序默认进入启动页面中的webview跳转到...
    99+
    2023-08-16
    小程序 微信小程序 前端 微信 html5
  • JavaScript实现页面跳转的方式有哪些
    JavaScript实现页面跳转的方式有以下几种:1. 使用location对象的方法:- `location.href = url...
    99+
    2023-08-08
    JavaScript
  • ASP实现页面跳转的方式有哪些
    ASP(Active Server Pages)是一种用于网页开发的服务器端脚本语言,可以通过多种方式实现页面跳转。以下是几种常见的...
    99+
    2023-08-08
    ASP
  • SpringBoot异常错误页面实现方法介绍
    目录导言实现步骤加入thymeleaf依赖然后创建controller使用X进行模糊匹配统一错误页面显示导言 默认情况下,SpringBoot 项目错误页面如下: 直接这样太丑了...
    99+
    2022-11-13
  • SpringBoot定制三种错误页面及错误数据方法示例
    目录定制错误页面自定义 error.html自定义动态错误页面自定义静态错误页面定制错误数据1. 自定义异常处理类2. 自定义错误属性处理工具我们知道 Spring Boot 已经提...
    99+
    2022-11-12
  • Springboot错误页面和错误信息定制操作
    目录1、错误页面自定义2、错误数据2.1 默认错误数据2.2 自定义错误数据SpringBoot2.1.4错误处理机制 前面一片已经介绍了springboot错误处理的机制,其实从整...
    99+
    2022-11-12
  • SpringBoot怎么定制错误页面及错误数据
    这篇文章主要介绍“SpringBoot怎么定制错误页面及错误数据”,在日常操作中,相信很多人在SpringBoot怎么定制错误页面及错误数据问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”SpringBoot怎...
    99+
    2023-06-21
  • vue 使用vuex在页面跳转的实现方式
    目录vue 使用vuex在页面跳转第一种方式:使用 router 动态路由传参,将需要的数据带过去第二种方式:使用vuexvuex 页面跳转参数存储获取vue中我们用于页面跳转有三种...
    99+
    2022-11-12
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作