SpringBoot 全局异常错误页面的示例分析
发表于:2026-11-04 作者:千家信息网编辑
千家信息网最后更新 2026年11月04日,这篇文章给大家介绍SpringBoot 全局异常错误页面的示例分析,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。SpringBoot 全局异常错误页面1. 创建项目,依赖Web
千家信息网最后更新 2026年11月04日SpringBoot 全局异常错误页面的示例分析
这篇文章给大家介绍SpringBoot 全局异常错误页面的示例分析,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
SpringBoot 全局异常错误页面
1. 创建项目,依赖Web 和 thymeleaf
org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-starter-thymeleaf
2. 准备两个异常错误页面
在template中创建error文件夹,在error文件夹中创建4xx.html 和 5xx.html
3.准备自定义错误处理类
com.zhl.springbootexceptionjunit.controller.MyBasicErrorController
SpringBoot 出现异常时会查找 /error 视图, 如果没有则会根据错误码查找对应 error/400.html 之类的错误静态页面
此处重写ErrorController,实现/error 视图,根据错误类型,跳转至对应的视图,由于使用视图技术,需引用模板引擎(本例用thymeleaf)
package com.zhl.springbootexceptionjunit.controller;import org.springframework.boot.web.servlet.error.ErrorController;import org.springframework.http.HttpStatus;import org.springframework.http.ResponseEntity;import org.springframework.stereotype.Controller;import org.springframework.ui.Model;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.context.request.ServletWebRequest;import org.springframework.web.context.request.WebRequest;import javax.servlet.http.HttpServletRequest;import java.util.Date;import java.util.HashMap;import java.util.Map;/** * 定制ErrorController,目的是能使SpringBoot找到自己定制的错误页面 * 大部分的代码BasicController一致,关键点是修改错误页面的路径 */@Controller@RequestMapping(value = "/error")public class MyBasicErrorController implements ErrorController {@RequestMapping(produces = {"text/html"})//返回给浏览器 public String handlerError(HttpServletRequest request, Model model){ WebRequest webRequest = new ServletWebRequest(request);//对request进行包装,目的是能操作更多的方法 HttpStatus status = this.getStatus(request);//获取status String path = (String) webRequest.getAttribute("javax.servlet.error.request_uri", 0); String message = (String) webRequest.getAttribute("javax.servlet.error.message", 0);if(message.equals("")){ message = "No Available Message"; }//携带错误数据信息 model.addAttribute("timestamp", new Date()); model.addAttribute("statusCode", status.value()); model.addAttribute("error", status.getReasonPhrase()); model.addAttribute("message", message); model.addAttribute("path", path);int i = status.value() / 100;//判断是4xx还是5xx错误 if(i == 4){return "error/4xx";//使用自己定制的错误页面 }else if(i == 5){return "error/5xx";//使用自己定制的错误页面 }return null; }@RequestMapping//返回给客户端 public ResponseEntity4.测试 代码
com.zhl.springbootexceptionjunit.controller.UsersController
@Controllerpublic class UsersController {@RequestMapping("showinfo")public String showinfo(){ String str=null; str.length();return "ok"; }}测试1,运行时错误:
测试2:无资源的情况

关于SpringBoot 全局异常错误页面的示例分析就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
错误
页面
更多
视图
全局
目的
测试
示例
分析
代码
内容
文件
文件夹
方法
中创
准备
包装
帮助
不错
一致
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网科技公司起名
互联网科技公司税收优惠
深圳互联网络科技有限公司
菲比寻常互联网科技
互联网高科技企业
互联网科技公司有哪些
互联网科技美容
卓越科技互联网 招聘
太原新华互联网科技学校怎么样
玖二柒互联网科技公司待遇
天速互联网络科技有限公司
移动互联网科技股
金融科技与互联网金融相同和不同
佳云科技和互联网广告
受益于互联网科技的高速发展
为客找房互联网科技公司怎么样
众安科技工业互联网合作
华人运通互联网科技公司
上海旺乐尼互联网科技有限公司
小牛互联网科技有限公司地址
云信互联网科技有限公司
关于新基建和互联网科技
金融科技与互联网金融
易互联网科技有限公司
海南科技产业互联网平台
上海京穆互联网科技有限公司
山东星卡互联网科技有限公司官网
国产互联网科技公司
互联网时代高科技布局
现代互联网科技公司