ControllerAdvice控制器切面与捕获全局异常

@ControllerAdvice注解用于创建全局的异常处理,它可以捕获并处理所有Controller中抛出的异常。本文介绍了三种全局异常处理方式:1) 使用@ControllerAdvice,2) 实现HandlerExceptionResolver接口,3) 配置SimpleMappingExceptionResolver。通过@ControllerAdvice,开发者可以定义多个@ExceptionHandler方法,SpringMVC会自动选择合适的异常处理器。此外,它还与RequestBodyAdvice和ResponseBodyAdvice接口结合,用于处理请求和响应。
摘要由CSDN通过智能技术生成

简介

  • @ControllerAdvice注解从名字上就可以看出来这个是针对Controller的切面增强处理注解,类似与@Controller和@RestController一样,@ControllerAdvice也有对应的@RestControllerAdvice注解用来返回序列化之后的对象。

  • @ControllerAdvice实际上也是一个Component,因为该注解同时也被@Component注解,搭配这个注解通常有一个注解和两个接口:

  • @ExceptionHandler注解:统一处理从Controller抛出的异常,在@ControllerAdvice中可以拥有多个@ExceptionHandler和实现方法,SpringMVC将会自动判断哪个异常优先处理;

  • RequestBodyAdvice接口:用来对Request请求方法体和对应方法参数进行处理,如果方法参数有多个,将会顺序调用到接口方法中来;

  • ResponseBodyAdvice接口:类似RequestBodyAdvice,只是处理的对象变成了Response响应,处理的对象包括请求体和返回类型。

  • 另外需要注意的是,@ControllerAdvice注解是一定需要搭配其它的注解或者接口使用的,否则就算这个注解类被识别到,没有具体的处理方法,SpringMVC是不会进行任何操作的。

简介链接:https://blog.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值