본문 바로가기
Development/Java

[Spring In Action]aspect용 AutoProxy생성

by 폴피드 2011. 9. 8.
728x90
반응형
<bean class="org.springframework.aop.framework.autoproxy.DefaultAdvisorAutoProxyCreator" />

이렇게 선언해놓으면 ProxyFactoryBean을 따로 선언해줄 필요가 없다.

DefaultAdvisorAutoProxyCreator를 선언하면 스프링 컨테이너는 이빈을 BeanPostProcessor로 인식한다.
bean에 id가 없는건 이 빈을 참조해서 사용할 필요가 없기 때문이다.

(참고)----------
Application Context 내에 bean lifecycle

인스턴스화 -> property 할당 -> BeannameAware의 setBeanName() -> BeanFactoryAware의 setBeanFactory()
->ApplicationContextAware의 setApplicationContext()
-> BeanPostProcessor의 postProcessBeforeInitialization()
-> InitializingBean의 afterPropertiesSet() -> 커스텀 초기화 메서드 호출 
-> BeanPostProcessor의 postProcessAfterInitialization()...

위에서 말한 BeanPostProcessor로 인식한다는 말은 위에 적힌 lifeCycle에서 BeanPostPrecessor 로딩시 자동으로 bean을 생성한다는 말인것 같다. 

 
728x90
반응형