@target和@annotation之间的区别

时间:2016-07-20 09:21:42

标签: java spring-aop

在春天的aop doc中,它说:

  

@target - 限制匹配到连接点(方法的执行   当使用Spring AOP时,执行对象的类有一个   给定类型的注释

     

@annotation - 限制匹配到连接点的主题   连接点(在Spring AOP中执行的方法)具有给定的   注释

我认为如果对象具有类似

的给定注释,@ target将匹配
@MyAnnotation
public class Foo {}

而@annotation将匹配方法上的注释,例如:

public class Foo {

    @MyAnnotation
    public void doSomething() {}
}

我的理解是否正确?

1 个答案:

答案 0 :(得分:0)

我根据此issue打开了这个问题,wilkinsona给出了答案:

  

关键区别在于@target与运行时类型匹配,而@annotation与静态声明的类型匹配。