异常处理机制

文章介绍了如何进行后端异常处理并将其信息传递到前端。通过使用@RestControllerAdvice和@ExceptionHandler注解创建全局异常处理器,捕获各种类型的异常,然后以JSON返回给前端。同时,提出了针对业务异常和系统异常的处理方案,包括发送特定消息、记录日志等措施。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

异常处理

概念:将后端的错误带到前端

使用步骤

  1. 申明一个类用于接收错误信息
  2. 添加注解
    @RestControllerAdvice
    @ExceptionHandler
@RestControllerAdvice //@ControllerAdvice和@ResponseBody注解
public class GlobalExceptionHandler
{
@ExeceptionHandler(Exception.class)//选择捕获的异常,这里是捕获所有的错误,全局错误
{
	public Result ex(Exception ex)
	ex.printStackTrace();
	return Result.error("错误");
	//将后端的错误信息以json对象返回到前端
}
}

注意,添加的注解需要被扫描加载到容器中
常见的异常

  1. 框架内部抛出的异常:因使用不规范导致
  2. 数据层抛出的异常:外部服务器故障导致
  3. 业务层抛出异常:逻辑书写错误等抛出异常
  4. 表现层抛出异常:数据收集校验不合规
  5. 工具类抛出的异常:工具类书写不够健壮导致

项目异常处理方案
业务异常:
发送对应消息传递给用户,提醒规范操作

系统异常:
发送固定消息安抚用户
发送特定消息给运维人员
记录日志

其他异常:
发送固定消息传递给用户,安抚用户
发送特定消息给编程人员,提醒维护
记录日志

实现步骤
1.自定义异常类型(业务层异常,系统异常)
在这里插入图片描述
在这里插入图片描述
2.根据异常设定专用的异常编码
在这里插入图片描述
3.激活异常,在可能出现异常的地方手动捕获
在这里插入图片描述
4.拦截处理异常
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值