샤브의 블로그 RSS 태그 관리 글쓰기 방명록
2010-11-04 11:38:07
spring은 각각의 lifecycle에 호출되는 메소드를 여러 인터페이스가 가지고 있다.
우리가 spring에서 작성하는 빈의 라이프사이클을 알고 원하는 작업을 처리하려면
이러한 메소드를 제공하는 인터페이스를 구현해주어야 작업 할 수 있다.
1. Spring에서 bean의 lifecycle과 관련된 인터페이스
1) 일반적인 경우
BeanNameAware, BeanFactoryAware, InitializingBean, DisposableBean
2) 사용자가 빈을 초기화할 수 있는 초기화 메소드를 추가했을 경우
BeanNameAware, BeanFactoryAware, InitializingBean, DisposableBean
org.springframework.beans.factory.config.BeanPostProcessor

2. LifeCycle
빈의 인스턴스화 -> 프로퍼티할당 -> BeanNameAware의 setBeanName()호출
-> BeanFactoryAware의 setBeanFactory()호출
->BeanPostProcessor의 초기화 전처리 -> 초기화 작업과 Property 설정완료
-> 초기화메소드실행 -> BeanPostProcessor의 초기화 후 처리