Всем привет!
Осваиваю аспекты.
Есть класс с методом:
public class GreetingServiceImpl implements GreetingService{
@Override
public String sayGreeting() {
return "Greeting, user!";
}
}
Хочу подключить аспект к этому методу.
Создаю класс:
package lessons.started;
import org.aspectj.lang.annotation.AfterReturning;
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Before;
import org.aspectj.lang.annotation.Pointcut;
@Aspect
public class AspectTest {
@Pointcut("execution(* lessons.started.GreetingServiceImpl.sayGreeting(..))")
public void performance() {
}
@Before("performance()")
public void befor() {
System.out.println("Before running");
}
@AfterReturning("performance()")
public void after() {
System.out.println("After running");
}
}
контекст получаю так:
ApplicationContext context = new AnnotationConfigApplicationContext(LessonsConfiguration.class);
класс
LessonsConfiguration:
@Configuration
public class LessonsConfiguration {
@Bean
@Qualifier("main")
public GreetingService greetingService(){
return new GreetingServiceImpl();
}
}
При этом советы не выполняются.
Как система поймет, что нужно использовать созданный аспект?