-----------全局异常处理器

一、作用

用于处理三层构架项目中出现的异常
在这里插入图片描述

二、定义全局异常处理器

  • 定义全局异常处理器非常简单,就是定义一个类,在类上加上一个注解@RestControllerAdvice,加上这个注解就代表我们定义了一个全局异常处理器。
  • 在全局异常处理器当中,需要定义一个方法来捕获异常,在这个方法上需要加上注解@ExceptionHandler。通过@ExceptionHandler注解当中的value属性来指定我们要捕获的是哪一类型的异常。
@RestControllerAdvice
public class GlobalExceptionHandler {

    //处理异常
    @ExceptionHandler(Exception.class) //指定能够处理的异常类型
    public Result ex(Exception e){
        e.printStackTrace();//打印堆栈中的异常信息

        //捕获到异常之后,响应一个标准的Result
        return Result.error("对不起,操作失败,请联系管理员");
    }
}

@RestControllerAdvice = @ControllerAdvice + @ResponseBody

处理异常的方法返回值会转换为json后再响应给前端

  • @RestControllerAdvice //表示当前类为全局异常处理器
  • @ExceptionHandler //指定可以捕获哪种类型的异常进行处理
  • 8
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
1.1 特征 .................................................... 1-1 1.2 内部架构概要 ............................................ 1-2 1.3 编程模式 ................................................ 1-3 1.4 数据格式概要 ............................................ 1-4 1.5 操作数寻址方式 .......................................... 1-5 1.6 指令集一览 .............................................. 1-6 2.1 用户编程模式 ............................................. 2-1 2.1.1 通用寄存 ............................................. 2-1 2.1.2 程序计数 ............................................. 2-2 2.1.3 条件码/借位 ............................................. 2-2 2.2 管理员编程模式 ........................................... 2-2 2.2.1 替换寄存组 ........................................... 2-3 2.2.2 处理状态寄存 ....................................... 2-4 2.2.2.1 PSR变更 ............................................. 2-6 2.2.2.2 异常识别与处理变更 ................................... 2-6 2.2.2.3 RTE和RFI指令变更 .................................. 2-7 2.2.2.4 MTCR指令变更 ........................................ 2-7 2.2.3 向量基址寄存 ........................................ 2-7 2.2.4 管理员存储寄存 ....................................... 2-7 2.2.5 异常影子寄存 ......................................... 2-7 2.2.6 全局控制寄存 ......................................... 2-8 2.2.7 全局状态寄存 ......................................... 2-8 3.1 指令类型和寻址方式 ...................................... 3-1 3.1.1 寄存--寄存类指令 .................................. 3-1 3.1.1.1 单寄存寻址方式 .................................... 3-1 3.1.1.2 双寄存寻址方式 .................................... 3-1 3.1.1.3 寄存与5位立即数方式 .............................. 3-2 3.1.1.4 寄存与5位偏移立即数方式 .......................... 3-2 3.1.1.5 寄存与7位立即数方式 ............................. 3-2 3.1.1.6 控制寄存寻址方式 ................................. 3-3 3.1.2 数据存储访问指令 .................................... 3-3 3.1.2.1 规格化4位立即数寻址方式 ............................ 3-3 3.1.2.2 Load/Store 4个寄存方式 ........................... 3-3 3.1.2.3 Load/Store 多寄存方式 ............................. 3-3 3.1.2.4 Load相对字寻址方式 ................................. 3-4 3.1.3 流控制指令 ............................................ 3-4 3.1.3.1 规格化11位位移量方式 .............................. 3-4 3.1.3.2 寄存寻址方式 ...................................... 3-5 3.1.3.3 间址方式 ............................................ 3-5 3.1.3.4 寄存与4位负位移寻址方式 .......................... 3-5 3.2 操作码表 ................................................ 3-6 3.3 指令集 .................................................. 3-9 4.1 异常处理一览 ............................................ 4-1 4.2 异常处理步骤 ............................................ 4-2 4.3 异常向量 ................................................ 4-3 4.4 异常类型 ................................................ 4-4 4.4.1 复位异常 (向量位移 0x0) ............................... 4-4 4.4.2 未对界异常(向量位移 0x4) ............................. 4-4 4.4.3 访问异常 (向量位移 0x8) ............................... 4-5 4.4.4 被0除异常 (向量位移 0x0C) ............................ 4-5 4.4.5 非法指令异常 (向量位移 0x10) .......................... 4-5 4.4.6 违反特权异常 (向量位移 0x14) .......................... 4-5 4.4.7 跟踪异常 (向量位移 0x18) .............................. 4-5 4.4.8 断点异常 (向量位移 0x1C) .............................. 4-6 4.4.9 不可恢复错异常 (向量位移 0x20) ........................ 4-7 4.4.10 软件复位异常 (向量位移 0x24) ......................... 4-7 4.4.11 中断异常 ........................................... 4-7 4.4.11.1 正常中断 (INT) ..................................... 4-8 4.4.11.2 快速中断(FINT) ..................................... 4-8 4.4.12 硬件加速异常 (向量位移 0x30) ....................... 4-8 4.4.13 指令陷阱异常 (向量位移 0x40-0x5C) .................... 4-9 4.5 异常优先级 .............................................. 4-9 4.6 从异常句柄返回 .......................................... 4-11

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值