我在尝试执行Spring AOP @After建议时遇到异常:
线程“主”中的异常org.springframework.beans.factory.BeanCreationException:创建文件[C:\ Users \ sonue \ Documents \ learn \ springaop \ target \ classes \ com \ sonu \ springaop文件中定义的名称为'employeeDAO'的bean时出错\ dao \ EmployeeDAO.class]:Bean初始化失败;嵌套的异常是java.lang.IllegalArgumentException:警告此类型名称不匹配:EmployeeDAO [Xlint:invalidAbsoluteTypeName]
原因:java.lang.IllegalArgumentException:警告此类型名称不匹配:EmployeeDAO [Xlint:invalidAbsoluteTypeName]
以下是我的代码的外观:
@After("execution(* EmployeeDAO.getEmployeeById(..))") //point-cut expression
public void logAfterV1(JoinPoint joinPoint)
{
System.out.println("EmployeeCRUDAspect.logAfterV1() : " + joinPoint.getSignature().getName());
}
最佳答案
@After("execution(* com.sonu.springaop.dao.EmployeeDAO.getEmployeeById(..))") //point-cut expression
public void logAfterV1(JoinPoint joinPoint)
{
System.out.println("EmployeeCRUDAspect.logAfterV1() : " + joinPoint.getSignature().getName());
}
使用类的完全限定名称和程序包名称。