2010-11-05 4 views
1

Я использую аннотации AspectJ вместо написания фактических файлов аспектов. Я хочу показать значение аннотации для моего совета.AspectJ выставлять значение аннотации с использованием аннотаций AspectJ

настоящее время у меня это, но она не выставляет значения внутри MyAnnotation

@Before("execution(@MyAnnotation * * (..))") 
public void intercept(JoinPoint jp) { 
... 
} 

То, что я имел в виду что-то вроде этого:

@Before("execution(@MyAnnotation * * (..)) && @this(MyAnnotation)") 
public void intercept(JoinPoint jp, MyAnnotation myAnnotation) { 
... 
} 

Это, очевидно, имеет синтаксическую ошибку, но было интересно, был ли я рядом. Кажется, я не могу найти пример синтаксиса при использовании аннотаций AspectJ для этого.

ответ

2

Используется тип, когда вы должны использовать идентификатор. Правильный код:

@Before("execution(@MyAnnotation * * (..)) && @this(myAnnotation)") 
public void intercept(JoinPoint jp, MyAnnotation myAnnotation) { 
... 
} 
+0

+1: Хорошая работа Рамнивас! – Espen

Смежные вопросы