...
<aop:before pointcut-ref="A" method="beforeCall" />
<aop:after pointcut-ref="A" method="afterCall" />
<aop:after-returning pointcut-ref="A" method="afterReturnCall" returning="retVal" />
...上面是一段我的spring的配置文件applicationContext.xml里的关于AOP的一段对应的aspect的Java程序有对应的三个方法
public void afterCall(JoinPoint point){
Signature sign = point.getSignature();
System.out.println("after\tsign:"+sign.getName());
}
public void beforeCall(JoinPoint point){
Signature sign = point.getSignature();
System.out.println("before\tsign:"+sign.getName());
}
public void afterReturnCall(Object retVal){
System.out.println("\t返回值:"+ retVal);
}
为什么最后一个返回值的pointcut的方法里不能取得JoinPoint point啊?
我要是追寻一个方法从始(调用之前)到终(即返回值)记录日志的话,咋办呀?
我尝试着把返回值方法写成 public void afterReturnCall(JoinPoint point,Object retVal){
System.out.println("\t返回值:"+ retVal);
}居然调用不到!!
各位有什么办法吗?
谢谢了大侠位!!