如何获取AspectJ中用法的注释参数的值?

时间:2011-07-20 12:09:50

标签: java security annotations aspectj aspect

考虑这种方法:

@Access(rights = GUEST)
public void foo() {
  doSomething();
}

如果方法具有@Access注释,则此切入点基本匹配:

pointcut check() : 
execution(@Access * *(..));

但是如何访问存储特定访问级别的@Access字段rights,以便我可以使用它?

1 个答案:

答案 0 :(得分:8)

尝试使用:

pointcut check(Access access) : 
execution(@Access * *(..)) && @annotation(access);

请参阅documentation here