AspectJ:List <object> pointcut args </object>

时间:2015-02-13 10:18:15

标签: aop aspectj

我有这堂课:

public class MyClass {

    public void updatePeople(List<Person> people) { //DO STUFF }

}

我希望在AOP调用people时记录updatePeople的大小。

这是我的方面:

@Aspect
public class MyAspect {

    @Pointcut("execution(void com.bla.bla.MyClass.updatePeople(List<Person>)) && args(people)")
    public void updatePeople(List<Person> people) {}

    @Before("updatePeople(people)")
    public void log(List<Person> people) {
        log(people.size());
    }

}

但永远不会调用log。我猜List<Person>语法在切入点中不正确。我怎么能这样做?

感谢。

1 个答案:

答案 0 :(得分:0)

解决!我将切入点改为:

@Pointcut("execution(void com.bla.bla.MyClass.updatePeople(..)) && args(people)")
public void updatePeople(List<Person> people) {}