当前位置: 首页 > 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…...

极客玩法:OpenClaw+Qwen3-32B实现命令行AI增强

极客玩法&#xff1a;OpenClawQwen3-32B实现命令行AI增强 1. 为什么需要命令行AI助手&#xff1f; 作为一个常年与终端打交道的开发者&#xff0c;我发现自己每天要重复输入大量命令&#xff1a;查日志、部署服务、处理数据……这些操作往往需要记住复杂的参数组合&#xff0…...

告别终端命令:Applite如何让macOS应用管理变得轻松有趣

告别终端命令&#xff1a;Applite如何让macOS应用管理变得轻松有趣 【免费下载链接】Applite User-friendly GUI macOS application for Homebrew Casks 项目地址: https://gitcode.com/gh_mirrors/ap/Applite 如果你曾因复杂的终端命令而对Homebrew望而却步&#xff0c…...

告别命令行恐惧:用乐鑫官方Flash Download Tool图形化烧录ESP32-S3固件(保姆级图文教程)

告别命令行恐惧&#xff1a;乐鑫Flash Download Tool图形化烧录ESP32-S3全指南 第一次接触ESP32开发板时&#xff0c;那个闪烁的命令行窗口让我手足无措。直到发现乐鑫官方的Flash Download Tool&#xff0c;才发现原来固件烧录可以如此直观简单——不需要记忆任何命令参数&…...

从理论到实践:双有源桥DAB-SPS控制模式仿真全解析

1. 双有源桥DAB与SPS控制模式入门 第一次接触双有源桥&#xff08;Dual Active Bridge&#xff0c;简称DAB&#xff09;时&#xff0c;我被它优雅的对称结构吸引住了。这种DC-DC变换器拓扑就像一座精心设计的桥梁&#xff0c;两侧各有一个全桥电路&#xff0c;通过高频变压器耦…...

Altium Designer电源层不够用?试试用Split Planes功能把3.3V和5V塞进同一层

Altium Designer电源层不够用&#xff1f;试试用Split Planes功能把3.3V和5V塞进同一层 在四层板设计中&#xff0c;硬件工程师常常面临一个棘手问题&#xff1a;有限的层数如何容纳多种电源和地网络&#xff1f;当3.3V、5V、1.8V以及AGND、DGND都需要专属平面时&#xff0c;传…...

不止于解题:用玄机靶场案例,打造你的自动化安全日志监控脚本

不止于解题&#xff1a;用玄机靶场案例打造自动化安全日志监控脚本 在网络安全领域&#xff0c;日志分析往往是防御的第一道防线。当我们在玄机靶场中完成SSH爆破日志分析的解题后&#xff0c;是否想过将这些手动操作转化为自动化工具&#xff1f;本文将带你从单次解题跃升到持…...

别再手动算占空比了!手把手教你用TI C2000 EPWM互补输出驱动电机(附死区配置避坑指南)

从零到精通的TI C2000 EPWM电机驱动实战&#xff1a;死区配置与波形调试全解析 在电机控制领域&#xff0c;精确的PWM信号生成直接决定了系统性能和可靠性。传统的手动计算占空比方式不仅效率低下&#xff0c;还容易引入人为误差。TI C2000系列DSP内置的增强型PWM模块&#xff…...

深入解析IoU(Jaccard系数)在目标检测中的关键作用与高效实现

1. IoU究竟是什么&#xff1f;从基础概念到视觉理解 第一次接触目标检测时&#xff0c;我对着论文里满屏的"IoU"缩写发懵——这到底是个什么魔法指标&#xff1f;后来在调试YOLO模型时才发现&#xff0c;这个看似简单的比值&#xff0c;实际上是整个检测任务的基石性…...

从电赛真题到产品原型:深入解析单相全桥逆变三种SPWM调制策略(含效率与波形对比)

单相全桥逆变SPWM调制策略实战&#xff1a;从电赛到工业应用的深度解析 在电力电子领域&#xff0c;逆变技术作为直流-交流转换的核心环节&#xff0c;其性能优劣直接影响着整个系统的效率与可靠性。单相全桥逆变器凭借其结构简单、控制灵活的特点&#xff0c;成为电子设计竞赛…...

手把手教你用Python写一个高效图片爬虫(附代码+反爬策略)

大家好&#xff01;今天分享一个我近期开发的Python图片爬虫程序&#xff0c;适合新手入门和进阶学习。项目包含多线程下载、反反爬机制、数据存储等核心功能&#xff0c;代码已开源并附详细注释。 一、项目背景 在数据采集场景中&#xff0c;图片下载是常见需求。但目标网站…...