项目中异常是如何处理的

简介: 项目中设定了全局异常处理器,统一处理预期和运行时异常。预期异常由程序员手动抛出,用于异常情况的接口返回;运行时异常为不可控错误,提供统一返回格式便于前端提示和后端排查。全局异常处理器借助@RestControllerAdvice和@ExceptionHandler注解,前者标识处理器,后者按异常类型定制前端响应,如预期异常直接返回,运行时异常则调整响应内容。

在我们的项目中定义了一个全局异常处理器来统一处理异常。

一般项目开发中的异常分为了两类:一个是预期异常,一个是运行时异常。

  • 其中预期异常就是程序员手动抛出的异常,如果有业务处理不合理,可以使用异常来提供接口的返回
  • 运行时异常,这类异常是项目中不可控的异常,比如代码直接报错了,这个时候接口的返回会有一个统一的返回格式,来方便的给前端进行提醒,同时呢,后端看到之后可以在后端查看异常方便进行处理

在定义全局异常的时候,会使用到两个注解

  • @RestControllerAdvice  定义是一个控制器增强类,来表示这个类是一个全局异常处理器
  • @ExceptionHandler  这个是在方法上进行定义,它可以指定异常的类型来进行拦截,通过不同的异常类型,进行不同的前端响应,比如预期异常可以直接返回,如果是运行时异常,则会转换响应内容
目录
相关文章
|
10天前
|
网络协议 Java 网络安全
如何处理“协议异常”错误
当遇到“协议异常”错误时,通常需要检查网络连接、防火墙设置和软件版本。确保所有组件都是最新的,并尝试重新启动设备或应用程序。如果问题持续存在,请联系技术支持以获取进一步的帮助。
|
3月前
|
Cloud Native 数据处理
项目环境测试问题之当异步任务在运行过程中抛出非预期的异常会导致后果如何解决
项目环境测试问题之当异步任务在运行过程中抛出非预期的异常会导致后果如何解决
|
4月前
|
文字识别 Java
文本,文字识别12,接口返回值和异常封装,一个好的接口,应该包括,错误码,提示信息,返回的数据,应该知道出错,错在哪里,抛出业务异常应该怎样解决?出现业务异常的时候,抛出业务异常,全局异常处理
文本,文字识别12,接口返回值和异常封装,一个好的接口,应该包括,错误码,提示信息,返回的数据,应该知道出错,错在哪里,抛出业务异常应该怎样解决?出现业务异常的时候,抛出业务异常,全局异常处理
|
6月前
|
程序员
项目中的全局异常是如何处理的
项目中的全局异常处理通常包括对预期异常(程序员手动抛出)和运行时异常的管理。项目已提供`BaseException`作为基础异常类,用于手动抛出异常,并通过`GlobalExceptionHandler`进行全局处理。`
56 4
|
6月前
|
测试技术
需求不明确的情况下,测试该如何处理?
需求不明确的情况下,测试该如何处理?
130 0
|
数据采集 数据安全/隐私保护
如何使用异常处理机制捕获和处理请求失败的情况
在爬虫开发中,我们经常会遇到请求失败的情况,比如网络超时、连接错误、服务器拒绝等。这些情况会导致我们无法获取目标网页的内容,从而影响爬虫的效果和效率。为了解决这个问题,我们需要使用异常处理机制来捕获和处理请求失败的情况,从而提高爬虫的稳定性和稳定性。
121 0
如何使用异常处理机制捕获和处理请求失败的情况
|
前端开发
前端工作小结52-错误的处理方式
前端工作小结52-错误的处理方式
91 0
前端工作小结52-错误的处理方式
这一篇让你知道怎么处理异常
这一篇让你知道怎么处理异常
这一篇让你知道怎么处理异常
GoogleGuava - 第 1 章 基本工具——Throwables:简化异常和错误的传播与检查
GoogleGuava - 第 1 章 基本工具——Throwables:简化异常和错误的传播与检查
153 0
GoogleGuava - 第 1 章 基本工具——Throwables:简化异常和错误的传播与检查
如何解决URLerror中的异常?原来这样也行
前言 我们每次编写爬虫程序的时候,总会遇到一些异常,相信大家都很头疼的去百度,却没什么效果,本节为你们介绍两个普通的异常,,,,,URLError还有HTTPError,以及对它们的一些处理。 1.URLError 首先解释下URLError可能产生的原因: · 网络无连接,即本机无法上网 · 连接不到特定的服务器 · 服务器不存在 在代码中,我们需要用try-except语句来包围并捕获相应的异常。
1792 0