在使用声明方式的AOP编程中,遇到如下两个问题,解决方法以下:spring
(1)error at ::0 formal unbound in pointcut编程
解决方法:去掉函数通知函数中的参数,好比:将函数
@Before("execution(public void com.bjsxt.dao.impl.UserDAOImpl.*(..))")spa
public void beforeMethod(Method method){orm
System.out.println("method before");jsx
}it
改成io
@Before("execution(public void com.bjsxt.dao.impl.UserDAOImpl.*(..))")form
public void beforeMethod(){下载
System.out.println("method before");
}
这个办法能解决问题,可是一直不明白,但愿有人能帮忙解决一下
(2)error at ::0 can't find referenced pointcut myMethod
错误缘由:若是你用的JDK版本是1.6的话,而引用的aspectjrt.jar是spring-2.0中包含的jar包的状况下就会报这样的错误。
解决方法:就是下载最新的aspectjrt的jar包便可aspectj-1.6.6.jar ,或者使用spring3.0中的包!