spring学习笔记(17)——返回通知&异常通知&环绕通知
来源:互联网 发布:我的网络ip地址 编辑:程序博客网 时间:2024/06/03 19:41
本人接上篇spring学习笔记(16)——AOP之前后置通知
返回通知
/** * 返回通知: 方法正常执行完后调用,如果有异常,则不调用 * 可以访问到方法的返回值 * @param joinPoint * @param result 方法的返回值 */ @AfterReturning(value="execution(* com.zj.asceptj.*.*(..))",returning="result") public void afterReturning(JoinPoint joinPoint,Object result){ //方法名 String methodName = joinPoint.getSignature().getName(); System.out.println("method "+methodName+" end:"+result); }
异常通知
/** * 异常通知: 当方法出现异常时 * 可以指定出现哪些异常时才执行: 如何指定?通过入参指定,如: * 如果入参为NullPointException ex,那么只有在发生空指针异常时才执行 * @param joinPoint * @param ex */ @AfterThrowing(value="execution(* com.zj.asceptj.*.*(..))",throwing="ex") public void afterThrowing(JoinPoint joinPoint,Exception ex){ //方法名 String methodName = joinPoint.getSignature().getName(); System.out.println("method "+methodName+" occurs:"+ex); }
环绕通知
- 环绕通知类似于动态代理的全过程,可以使用环绕通知实现前置通知,后置通知,返回通知,异常通知的功能,十分强大,但并不常用
- 关于动态代理,请查看spring学习笔记(15)——AOP基础
/** * 环绕通知需要携带ProceedingJoinPoint类型的参数 * 环绕通知类似于动态代理的全过程: ProceedingJoinPoint这个类型的参数可以决定是否执行目标方法 * 且环绕通知必须有返回值,返回值即为目标方法的返回值 * @param pjd */ @Around("execution(* com.zj.asceptj.*.*(..))") public Object around(ProceedingJoinPoint pjd){ Object result = null; String methodName = pjd.getSignature().getName(); try { //前置通知 System.out.println("method:"+methodName+" begins with "+Arrays.asList(pjd.getArgs())); //执行目标方法 result = pjd.proceed(); //返回通知 System.out.println("method:"+methodName+" end with "+result); } catch (Throwable e) { // 异常通知 System.out.println("method:"+methodName+" occurs exception "+e); } //后置通知 System.out.println("method ends"); return result; }
0 0
- spring学习笔记(17)——返回通知&异常通知&环绕通知
- Spring AOP学习笔记(3):AOP返回通知&异常通知&环绕通知
- 17.Spring学习笔记_返回通知&异常通知&环绕通知(by尚硅谷_佟刚)
- Spring AOP--返回通知,异常通知和环绕通知
- Spring AOP--返回通知,异常通知和环绕通知(顶)
- Spring返回通知、异常通知和环绕通知
- 13.返回通知&异常通知&环绕通知
- 基于注解的返回通知、异常通知、环绕通知-佟刚老师《Spring4视频教程》学习笔记(19)
- spring的返回通知、异常通知、环绕通知、切面的优先级与重用切点表达式
- Spring框架——AOP前置、后置、环绕、异常通知
- Spring_17-19前置通知&后置通知&返回通知&异常通知&环绕通知
- Spring-AOP-通知-环绕通知
- Spring学习(十)-AOP返回通知&异常通知&环形通知
- Spring笔记4-AOP,前置通知,后置通知,返回通知,异常通知
- Spring 环绕通知
- spring 的环绕通知
- Spring--AOP-环绕通知
- spring aop 环绕通知
- UVA LA3516,分支法加上递归和递推
- python安装twist
- JAVA 线程 之 初级线程安全
- sql server 常见等待状态分析
- 第八周项目2:Time类中的运算符重载
- spring学习笔记(17)——返回通知&异常通知&环绕通知
- 微营销好标题之金玉良言(微营销标题吸引粉丝篇-4)
- 设置网站默认页面
- 分区以及grub恢复
- 学习笔记:实现linux下文件内容的复制
- JS字符串和数组操作方法(转载)
- spring依赖注入(1)-基础
- boost中的unordered_map使用方法
- C++简单的反射实例