SpringBoot:切面AOP权限校验:实例演示与注解全解( 五 )
需要注意的是 , 在 @AfterReturning 注解 中 , 属性 returning 的值必须要和参数保持一致 , 否则会检测不到 。 该方法中的第二个入参就是被切方法的返回值 , 在 doAfterReturning 方法中可以对返回值进行增强 , 可以根据业务需要做相应的封装 。 我们重启一下服务 , 再测试一下:
方法 testAop 执行完毕 , 返回参数为:Hello CSDN对返回参数进行业务上的增强:Hello CSDN 增强版
3.6 @AfterThrowing当被切方法执行过程中抛出异常时 , 会进入 @AfterThrowing 注解的方法中执行 , 在该方法中可以做一些异常的处理逻辑 。 要注意的是 throwing 属性的值必须要和参数一致 , 否则会报错 。 该方法中的第二个入参即为抛出的异常 。
@Aspect@Component@Slf4jpublic class LogAspectHandler {/*** 在上面定义的切面方法执行抛异常时 , 执行该方法* @param joinPoint jointPoint* @param ex ex*/@AfterThrowing(pointcut = "pointCut()", throwing = "ex")public void afterThrowing(JoinPoint joinPoint, Throwable ex) {Signature signature = joinPoint.getSignature();String method = signature.getName();// 处理异常的逻辑log.info("执行方法{}出错 , 异常为:{}", method, ex);}}
最后【SpringBoot:切面AOP权限校验:实例演示与注解全解】感谢大家看到这里 , 如果本文有什么不足之处 , 欢迎多多指教;
- SpringBoot+MyBatis+MySQL读写分离实现
- SpringBoot构造流程源码分析:Web应用类型推断
- 搭建私有Sentry日志收集系统并集成到springboot
- SpringBoot扫描不到组件?给你提供几种方案
- SpringBoot自定义错误页面
- SpringBoot实现反向代理
- SpringBoot内置源码解析WebServer初始化过程
- SpringBoot外化配置源码解析:命令参数获取文件加载
- 写了个牛逼的日志切面,甩锅更方便了
- SpringBoot外化配置源码解析:外化配置简介、参数处理