• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    미해결

AutoProxyCreator와 BeanFactoryAspectJAdvisorsBuilder의 관계

22.02.27 23:13 작성 조회수 156

0

안녕하세요 영한님 강의 잘 수강하고 있습니다.

 

8. @Aspect AOP 이 부분에 대해서 공부하고 있습니다.

 

첫번째 질문

5번째 페이지를 보면, 

 

@Aspect 를 찾아서 이것을 Advisor 로 만들어준다. 쉽게 이야기해서 지금까지 학습한 기능에 @Aspect Advisor 로 변환해서 저장하는 기능도 한다

6번째 페이지를 보면, 

BeanFactoryAspectJAdvisorsBuilder 클래스이다. @Aspect 의 정보를 기반으로 포인트컷, 어드바이스, 어드바이저를 생성하고 보관하는 것을 담당한다.

AutoProxyCreator와 AdvisorBuilder 모두 어드바이저를 생성하는 것처럼 이해가 됩니다.

 

@Aspect를 스캔하고 어드바이저를 생성하는게 둘 중 어느것인가요?

어드바이저 빌더가 @Aspect로 생성된 어드바이저를 관리하는건 이해가 되는데, 어드바이저를 생성하는게 어느것인지 궁금합니다.

 

2번째 질문

+ @Aspect로 생성된 어드바이저는 스프링 빈이 아닌가요? 그림 상에서 스프링 컨테이너 외부에 표현되어 있어서 헷갈립니다

 

답변 1

답변을 작성해보세요.

0

안녕하세요. 김선도님

1. AutoProxyCreator가 AdvisorBuilder를 사용해서 생성하고 관리합니다.

2. @Aspect로 생성된 어드바이저는 스프링 빈이 아닙니다^^ 이 어드바이저를 스프링 빈으로 등록하게 되면 다른 곳에서도 모두 사용할 수 있게 되는데요. 스프링 입장에서는 이 기능은 여기서만 사용하기 때문에 스프링 빈으로 등록하지 않은 것으로 이해하시면 됩니다.

감사합니다.

김선도님의 프로필

김선도

질문자

2022.03.02

명확한 답변 감사합니다!