Programming/Spring
Spring AOP - @Aspect 구현
byeong07
2018. 6. 16. 21:13
이번에 @Aspect를 이용한 AOP를 설정
aopEx2/src/main/java/com/aopEx2/LogAop.java
@Pointcut을 사용하지 않아도 됩니다.
@Before 어노테이션을 보면 속성에 바로 범위를 지정했습니다.
같은 방법으로 @Around에 속성을 지정해도 되고, Pointcut을 지정해주는 메서드를 생성해도 됩니다.
이전에 xml 파일에서 설정했던 것과 다르게 JAVA 파일에서 어노테이션을 이용해서 설정을 했지만,
xml 파일에서 추가해야 될 것이 있습니다.
aopEx2/src/main/resources/applicationCtx.xml
<aop:aspectj-autoproxy/>를 명시하면 @Aspect 어노테이션이 있는 클래스를 찾아서 자동으로 aspect로 만든다.
그 아래에는 bean 객체를 생성했고, 이전에 사용한 XML 방식의 AOP 설정은 주석 처리를 했습니다.
MainClass를 실행하면 loggerAop() 메서드와 @Before 어노테이션이 달려있는 beforeMethod가 실행되는데
beforeMethod() 메서드는 핵심 기능 이전에 1번 실행이 됩니다.
@Pointcut 어노테이션을 사용하지 않고, 범위를 바로 명시해도 가능합니다.