Я уже некоторое время использую AspectJ, и он прекрасно работает с полями области объекта, содержащими аннотации.Я только что столкнулся с ситуацией, когда хочу аннотировать переменную области действия метода, которая будет работать с моим pointcut, но у меня возникли проблемы с ним.
Вот точка, которую я использую.Это прекрасно работает, если моя переменная является полем для объекта, но если я уменьшу область видимости до метода (переменная, объявленная внутри метода), то она больше не будет работать, и я не уверен, почему.Дайте мне знать, что я могу сделать, спасибо.
after(final Trigger trigger): set(@Triggereable * *) && args(trigger)
{
System.out.println("trigger flush");
}
Кроме того, вот пример того, что я хочу работать.Приведенный выше файл System.out.println должен срабатывать при создании экземпляра триггера:
public void foo()
{
@Triggereable
private Trigger trigger = new Trigger();
}