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

springboot基本使用十一(自定义全局异常处理器)

例如:我们都知道在java中被除数不能为0,为0就会报by zero错误

@RestController
public class TestController {@GetMapping("/ex")public Integer ex(){int a = 10 / 0;return a;}}

打印结果:

如何将这个异常进行处理?

创建全局异常处理类类名自定义

@RestControllerAdvice
public class OverallHandleException {@ExceptionHandlerpublic void arithmeticException(ArithmeticException ex){String msg = ex.getMessage();if(msg.contains("by zero")){System.err.println("被除数数不能为0");}else{System.err.println("未知错误");}}
}

@RestControllerAdvice:@ControllerAdvice加了一个@ResponseBody注解,用来将返回值写入到响应体

@ExceptionHandler:异常拦截器

打印结果:

首先得获取异常得名称,这样就可以对异常进行处理,也可以定义成所有异常的父级Exception

 

http://www.lryc.cn/news/361528.html

相关文章:

  • SpringSecurity6从入门到实战之SpringSecurity整合自动装配详解(源码级讲解,耐心看完)
  • Java Web是前端吗:深入解析Java Web技术的定位与边界
  • The minCompileSdk (34) specified in adependency‘s AAR metadata
  • MySQl基础入门⑬.5
  • 【遂愿赠书 - 1期】:安恒“网安三剑客”-大模型时代下的网络安全实战指南
  • 【C++入门到精通】C++ thread线程库 [ C++入门 ]
  • CMakeFile.txt通过sysroot方式后生成makefile报错
  • Python 将Word、Excel、PDF、PPT文档转为OFD文档
  • 【java11】java11新特性之局部变量类型推断升级
  • 遥感卫星影像处理流程
  • 【AR开发-开源框架】使用Sceneform-EQR快速开发AR应用,当前接入了AREngine、ORB-SLAM,可快速地适配不同的安卓设备
  • 学生信息管理系统C++
  • 前端开发三大主流框架解析
  • 【2.文件和目录相关(下)】
  • 【C语言】结构体与内存对齐
  • 【机器学习】之 kmean算法原理及实现
  • 国产高边驱动HD70202Q替换英飞凌BTS7040-2
  • 2024年06月在线IDE流行度最新排名
  • 顺序表和链表基础操作的复习
  • [C#]winform部署官方yolov10目标检测的onnx模型
  • hmcode硬件编程1
  • [C++][CMake] set_target_properties called with incorrect number of arguments
  • AdamW算法
  • 【c++进阶(二)】STL之string类的模拟实现
  • PHPStudy(xp 小皮)V8.1.1 通过cmd进入MySQL命令行模式
  • php反序列化初步了解
  • Windows系统电脑本地部署AI音乐创作工具并实现无公网IP远程使用
  • 玩转Linux进度条
  • 真国色码上赞,科技流量双剑合璧,商家获客新纪元开启
  • C++:特殊类设计和四种类型转换