醒悟wjn
2016-11-26 20:08
为啥调具体的业务逻辑方法,就会转而执行around(ProceedingJoinPoint pj,String st,int a)这个方法,怎么感觉用的是动态代理
是动态代理,动态代理的定义就是为其他对象提供一种代理以控制对这个对象的访问,并且它的实现的形式就是定义且返回一个OBJECT对象,然后方法里有手动跳转到实际对象的方法。优点就是在真正调用某一对象之前,能执行一些功能处理,并且在调用这一对象之后,也能够进行一些处理。
不是的,around类型的advice有个核心的代码,就是pip.proceed(),这个pip就是around方法的第一个参数,pip.proceed()这句代码代表的就是切点pointcut指定的内容的目标代码,而pip.proceed()这句代码前后可以加上你需要的逻辑,看起来这些逻辑就像环绕目标代码,所以这种类型叫around。而你说的具体的业务逻辑就是指pip.proceed()这句代码执行的内容。
Spring入门篇
268802 学习 · 1016 问题
相似问题