当前位置: 首页 > news >正文

如何定制Spring的错误json信息

一,前言

相信很多同学都有遇到过这样的spring错误信息。

在我们没有做catch处理时或者做全局的exceptionHandle时,Spring遇到抛出向外的异常时,就会给我们封装返回这么个格式的异常信息。

那么问题来了,我们能否对这个返回增加错误信息呢。

答案肯定是可以的。下面博主为大家介绍如何增加。

二,spring 默认error信息配置说明

1. server.error.path

  • 属性: server.error.path
  • 描述: 设置错误页面的路径。默认值为 /error

2. server.error.include-stacktrace

  • 属性: server.error.include-stacktrace
  • 描述: 是否在错误响应中包含堆栈跟踪信息。默认为 never
  • 可选值:
    • never:从不包含堆栈跟踪信息。
    • always:总是包含完整的堆栈跟踪信息。
    • on_trace_param:当请求参数 trace 的值为 true 时包含堆栈跟踪信息。

3. server.error.whitelabel.enabled

  • 属性: server.error.whitelabel.enabled
  • 描述: 是否启用 Spring Boot 默认的错误页面(Whitelabel Error Page)。默认为 true

4. server.error.include-binding-errors

  • 属性: server.error.include-binding-errors
  • 描述: 是否在错误响应中包含数据绑定错误信息。默认为 never
  • 可选值:
    • never:从不包含数据绑定错误信息。
    • always:总是包含数据绑定错误信息。

5. server.error.include-message

  • 属性: server.error.include-message
  • 描述: 是否在错误响应中包含异常消息。默认为 always
  • 可选值:
    • always:总是包含异常消息。
    • on_param:当请求参数 message 的值为 true 时包含异常消息。
    • never:从不包含异常消息。

6. server.error.include-exception

  • 属性: server.error.include-exception
  • 描述: 是否在错误响应中包含异常类名。默认为 false
  • 可选值:
    • false:不输出错误类。
    • true:输出错误类信息。

三,部分效果展示

1,默认异常效果

2,打印堆栈信息

# 是否在错误响应中包含堆栈跟踪信息。默认为 never
server.error.include-stacktrace=always

3,打印异常msg信息

# 是否在错误响应中包含异常消息。默认为 always
server.error.include-message=always

4,打印异常类名

# 是否在错误响应中包含异常类名。默认为 false
server.error.include-exception=true

希望对各位大佬有帮助。麻烦加个关注点个赞谢谢!

相关文章:

如何定制Spring的错误json信息

一,前言 相信很多同学都有遇到过这样的spring错误信息。 在我们没有做catch处理时或者做全局的exceptionHandle时,Spring遇到抛出向外的异常时,就会给我们封装返回这么个格式的异常信息。 那么问题来了,我们能否对这个返回增加错…...

【第20章】Vue实战篇之Vue Router(路由)

文章目录 前言一、使用Vue-Router1.安装2. 创建路由器实例3. 注册路由器插件4. 根组件 二、访问路由器1.理论2.使用3. 展示 三、嵌套路由(子路由)1. 准备文件2. 配置路由3. 菜单配置4. 展示 总结 前言 Vue Router 是 Vue.js 的官方路由。它与 Vue.js 核心深度集成,…...

阿里云运维第一步(监控):开箱即用的监控

作者:仲阳 这是云的时代,现在云计算已经在各行各业广泛的应用。但是上云对于大多数客户来说,依然有很大的学习成本,如下图仅是阿里云都有几百款产品,怎么选择?怎么用?对于客户来说都是问题。“…...

Python量化交易学习——Part7:定制增强型中证红利策略

中证红利指数是一个反映A股市场高红利股票整体状况和走势的指数。它通过选取上海、深圳交易所中现金股息率高、分红比较稳定、具有一定规模及流动性的100只股票作为样本。这个指数的目的是提供一个全面且具有代表性的视角,以观察A股市场中高红利股票的表现。中证红利指数的样本…...

拥抱未来:探索改变游戏规则的新存储技术

目录 一.存储级内存(Storage-Class Memory) 3D XPoint 技术 特点 应用场景 优点 缺点 适用场景 示例 二.QLC NAND闪存 概述 优点 缺点 适用场景 前景展望 三.DNA存储 概述 优点 原理 实际应用 关键问题 研究进展 适用场景 分布式…...

shell中的流程控制

条件判断在流程控制中的重要性 有了条件判断才能进行if判断即分支流程,才能进行case的多分支流程,才能进行for循环和while循环。 单分支流程判断 如上图所示,在shell编程中常使用英文状态下的分号来在Linux控制台一次性执行多条命令&#x…...

DiffIR: Efficient Diffusion Model for Image Restoration

清华&ETH&字节&UTDhttps://github.com/Zj-BinXia/DiffIR 问题引入 IR任务和image synthesis任务不同点是IR任务本身有一个很强的低质量图片作为先验,所以可以不完全遵循图片生成的范式,本文主要在compact的IPR空间进行DM;本文提…...

xss一些笔记

(乱写的一些笔记) innerHTML只防script像是img就不会防 innerText都防 上面代码执行避免用户交互 js也可以用’‘执行 例子 alert’1‘ document.location.hash // #号后的部分,包括#号 document.location.host // 域名…...

以太坊网络中为什么要设置Gas上限

以太坊网络中的Gas上限(Gas Limit)是一个重要的机制,它主要出于以下几个目的: 防止无限循环和拒绝服务攻击(DoS): Gas上限防止了智能合约中的无限循环,这可以保护网络免受恶意合约的…...

vue-cli是什么?和 webpack是什么关系?

前言 Vue CLI是Vue.js项目的官方脚手架,基于Node.js与Webpack构建。安装Vue CLI前需确保Node.js已安装,随后通过npm全局安装。Vue CLI能迅速创建和管理Vue.js项目,提升开发效率。而Webpack则负责资源打包,通过配置文件管理依赖、插…...

leetcode刷题(46-50)

算法是码农的基本功,也是各个大厂必考察的重点,让我们一起坚持写题吧。 遇事不决,可问春风,春风不语,即是本心。 我们在我们能力范围内,做好我们该做的事,然后相信一切都事最好的安排就可以啦…...

[渗透测试学习] Runner-HackTheBox

Runner-HackTheBox 信息搜集 nmap扫描端口 nmap -sV -v 10.10.11.13扫描结果如下 PORT STATE SERVICE VERSION 22/tcp open ssh OpenSSH 8.9p1 Ubuntu 3ubuntu0.6 (Ubuntu Linux; protocol 2.0) 80/tcp open http nginx 1.18.0 (Ubuntu) 8000…...

keil5显示内存和存储占用百分比进度条工具

简介 [Keil5_disp_size_bar] 以进度条百分比来显示keil编译后生成的固件对芯片的内存ram和存储flash的占用情况, 并生成各个源码文件对ram和flash的占比整合排序后的map信息的表格和饼图。 原理是使用C语言遍历当前目录找到keil工程和编译后生成的map文件 然后读取工程文件和m…...

示例:推荐一个应用Adorner做的消息对话框

一、目的:开发过程中,经常用到对话框,下面演示一个应用Adorner做的带遮盖层蒙版的控件,使用MainWindow的Adorner实现不需要额外定义遮盖层,使用Object作为参数,可自定义DataTemplate定制消息显示样式 二、效…...

Building wheels for collected packages: mmcv, mmcv-full 卡住

安装 anime-face-detector 的时候遇到一个问题:Installation takes forever #1386:在构建mmcv-full时卡住,这里分享下解决方法(安装 mmcv 同理,将下面命令中的 mmcv-full 替换成 mmcv) 具体表现如下&#x…...

可视化表单拖拽生成器优势多 助力流程化办公!

当前,很多企业需要实现流程化办公,进入数字化转型时期。要想实现这一目标,就需要借助更优质的平台产品。低代码技术平台是得到企业喜爱的发展平台,拥有可视化操作、灵活、高效、更可靠等优势特点,在推动企业实现流程化…...

数据集制作——语义分割前png、jpg格式标签图转yolo格式.txt文件(附代码)

💪 专业从事且热爱图像处理,图像处理专栏更新如下👇: 📝《图像去噪》 📝《超分辨率重建》 📝《语义分割》 📝《风格迁移》 📝《目标检测》 📝《暗光增强》 &a…...

机器学习课程复习——ANN

Q:ANN? 基本架构 由输入层、隐藏层、输出层等构建前馈/反馈传播 工作原理 先加权求和:每个神经元的输出是输入加权和的激活再送入激活函数:激活函数的存在使得其能够拟合各类非线性任务 联想:像adaboosting的加权求…...

C++回溯算法(2)

棋盘问题 #include<bits/stdc.h> using namespace std; void func(int,int); bool tf(int,int); void c(); int n,k; char a[110][110]; int cnt20; int main() {cin>>n>>k;for(int i0;i<n;i){for(int j0;j<n;j){cin>>a[i][j];}}func(0,0);cout…...

流量有限、日活低的APP适合对接广告变现吗?

APP广告变现&#xff0c;总用户数和日活用户&#xff08;DUA&#xff09;是衡量APP价值和影响力的重要指标之一。 APP DUA过万&#xff0c;尤其是大几万时&#xff0c;通常具备了商业化价值&#xff0c;适合接入广告变现。日活1W意味着每天有1万名用户在使用这款应用&#xff…...

Shell 学习笔记 - 变量的类型 + 变量的赋值

1.6 Shell 变量的类型 Shell 变量分为四类&#xff0c;分别是 自定义变量环境变量位置变量预定义变量 根据工作要求临时定义的变量称为自定义变量&#xff1b; 环境变量一般是指用 export 内置命令导出的变量&#xff0c;用于定义 Shell 的运行环境&#xff0c;保证 Shell …...

vue播放flv格式的直播流

在ios无法播放&#xff0c;安卓可以 安装 npm install flv.js --save页面 <template><div><videoref"videoElement"style"width: 100%; height: 100%"autoplayplaysinlinemuted></video></div> </template><scr…...

Qt入门小项目 | 实现一个图片查看器

文章目录 一、实现一个图片查看软件 一、实现一个图片查看软件 需要实现的功能&#xff1a; 打开目录选择图片显示图片的名字显示图片 在以上功能的基础上进行优化&#xff0c;需要解决如下问题&#xff1a; 如何记住上次打开的路径&#xff1f; 将路径保存到配置文件中&#x…...

qt仿制qq登录界面

#include "mainwindow.h"MainWindow::MainWindow(QWidget *parent): QMainWindow(parent) {// 设置窗口大小this->resize(window_width, window_heigth);// 固定窗口大小this->setFixedSize(window_width, window_heigth);// 设置窗口图标this->se…...

HashMap详解(含动画演示)

目录 HashMap1、HashMap的继承体系2、HashMap底层数据结构3、HashMap的构造函数①、无参构造②、有参构造1 和 有参构造2 (可以自定义初始容量和负载因子)③、有参构造3(接受一个Map参数)JDK 8之前版本的哈希方法&#xff1a;JDK 8版本的哈希方法 4、拉链法解决哈希冲突什么是拉…...

TVS的原理及选型

目录 案例描述 TVS管的功能与作用&#xff1a; TVS选型注意事项&#xff1a; 高速TVS管选型 最近项目中遇到TVS管选型错误的问题。在此对TVS的功能及选型做一个分享。 案例描述 项目中保护指标应为4-14V&#xff0c;而选型的TVS管位SMJ40CA&#xff0c;其保护电压为40V未…...

【机器学习】无监督学习:探索数据背后的隐藏模式

在机器学习的广阔领域中&#xff0c;监督学习因其直观的训练方式和广泛的应用场景&#xff0c;往往受到更多的关注。然而&#xff0c;随着数据量和数据类型的不断增长&#xff0c;无监督学习的重要性日益凸显。本文将详细介绍无监督学习的理论基础、常用算法及其在实际中的应用…...

使用Elasticsearch在同一索引中区分不同类型的文档

在使用Elasticsearch时&#xff0c;有时我们需要在同一个索引中存放不同类型的文档&#xff0c;并且这些文档的字段可能不一致。在早期版本中&#xff0c;我们可以使用types来实现&#xff0c;但在Elasticsearch 7.x及更高版本中&#xff0c;types概念已被弃用。本文将介绍如何…...

驾校在线考试系统源码 手机+PC+平板自适应

Thinkphp在线考题源码 驾校在线考试系统 手机PC平板 自适应&#xff0c;机动车驾驶培训学校驾校类网站源码带手机端 运行环境&#xff1a;phpmysql 内附安装说明 驾校在线考试系统源码 手机PC平板自适应...

c++的多态,继承,抽象类,虚函数表,虚函数等题目+分析

目录 题目 代码题 分析 主观题 题目 代码题 class A { public:virtual void func(int val 1) {std::cout << "A->" << val << std::endl;}virtual void test() { func(); } };class B : public A { public:void func(int val 0) { std…...

怎样做才能让网站有排名/谷歌浏览器官方正版下载

转文&#xff1a;一个优秀的Java程序员必须了解GC的工作原理、如何优化GC的性能、如何与GC进行有限的交互&#xff0c;有一些应用程序对性能要求较高&#xff0c;例如嵌入式系统、实时系统等&#xff0c;只有全面提升内存的管理效率&#xff0c;才能提高整个应用程序的性能。本…...

做日签的网站/泉州百度广告

问题 1 如何批量删除macro 2 导入的macro乱码怎么办 解答 问题1: 通过编辑 C:\Users\你的电脑用户名\AppData\Roaming\MobaXterm\MobaXterm.ini 搜索 [Macros] 和 [MacrosHotkeys] 他们两个标题下的内容即对应你的macro. 注意: 编辑前必须先关闭mobaxterm软件. 问题2: macr…...

wordpress音乐网/百度自媒体注册入口

free命令用来显示内存的使用情况&#xff0c;使用权限是所有用户。 下面是对这些数值的解释&#xff1a;total:总计物理内存的大小。used:已使用多大。free:可用有多少。 Shared:多个进程共享的内存总额。 Buffers/cached:磁盘缓存的大小。第三行(-/ buffers/cached): used:已使…...

自己做网站怎样挣钱/seo的作用有哪些

导读&#xff1a;最新的10月统计数据显示&#xff0c;我国企业生产经营活动的指数——综合PMI产出指数为52%&#xff0c;比9月回落1.1%&#xff0c;表明企业生产经营总体延续扩张态势但有所减缓。面对这样的经济环境&#xff0c;企业需要花更大的力气才能保住利润。 所谓“干毛…...

做的网站空白了/百度在线咨询

find找到非零元素的索引和值语法&#xff1a;1. ind find(X)找出矩阵X中的所有非零元素&#xff0c;并将这些元素的线性索引值(linear indices&#xff1a;按列)返回到向量ind中。如果X是一个行向量&#xff0c;则ind是一个行向量&#xff1b;否则&#xff0c;ind是一个列向量…...

Cocos做网站/企业文化案例

2019独角兽企业重金招聘Python工程师标准>>> 如图所示&#xff1a; 解决方法&#xff1a; 1、打开防火墙,点击允许程序通过Window 防火墙 2、点击允许运行另一程序 3、选择安装的IntelliJ IDEA 程序&#xff0c;点击添加 4、然后就会看到 允许的程序和功能栏里 已经…...