Spring AOP를 사용할때 내부 method간 호출시 advice되지 않는 문제...
Submitted by splee73 on 수, 11/12/2008 - 09:45
안녕하세요.
현재 프로젝트에서 사용자가 사용한 bean과 method등을 log로 남겨야 하는데..
Spring AOP가 기본적으로 proxy 방식을 사용하기때문에,
bean 외부에서 호출한 method는 log가 남지만 bean method에서
다른 method를 호출할 경우 log가 남지 않는 문제가 있습니다.
JDK dynamic proxy 방식과 CGLib을 사용하는 방식 모두 처리가 안되는데요..
@AspectJ 등을 활용하면 가능한지요?
가능하다면 방법과 샘플을 부탁드립니다.
감사합니다.


답변] Spring AOP를 사용할때 내부 method간 호출시 advice되지 않는 문제...
LoadTime Weaving이 아닌 Compile Time Weaving 방식을 적용하면 bean method에서
다른 method를 호출할 경우에도 Aspect이 적용됩니다.
이를 위해서는 Aspect 정의시 Annotation을 사용하거나 AspectJ 스타일로 Aspect을 정의한 후 AspectJ Compiler를 이용하여 해당 Aspect을 컴파일 & 적용하시면 됩니다.
테스트 코드를 첨부하오니 참고하시기 바랍니다.
* 첨부 프로젝트에 대한 설명
Your home is valueble for me.
Your home is valueble for me. Thanks!
Can a loose tooth caused by bone loss be saved war Nail Design Xanthippe