인터넷 강의를 듣고 공부한 내용을 포스팅합니다.
'윤재성의 스프링 프레임워크 개발자를 위한 실습을 통한 입문 과정' 이란 강의를 듣고 있습니다.
빈 객체의 생명주기
저번 포스팅을 먼저 언급을 하고 넘어가자면
- 싱글톤일 경우 xml파일이 로딩 될 때 객체가 생성된다.
- 싱글톤이고 lazy-init이 true일 경우 getBean메서드 사용 할 때 객체가 사용된다.
- scope가 prototype일 경우 객체를 getBean메서드로 부를 때 마다 객체 생성, getBean메서드를 사용할 때 객체가 생성된다.
이러한 특징들을 살펴봤다. 또 IOC를 종료시키면 객체 또한 소멸된다.
Bean태그의 다른 속성들을 알아보자
inti-method : 생성자 호출 후 호출
destroy-method : 객체 소멸 후 호출
default-init-method/destroy : init-method/destroy를 설정하지 않은 경우 자동으로 호출
속성의 이름들이 직관적으로 본인들이 어떤 것을 할지 알려준다.
BeanPostProcessor
BeanPostProcessor를 클래스로 구현하고 xml에 정의하면 Bean객체를 생성 할 때 init-method가 호출되기 전에 가로채 다른 메서드를 호출 할 수 있다.
postProcessBeforeInitialization : init-method 에 지정된 메서드가 호출되기 전에 호출된다.
postProcessAfterInitialization : init-method에 지정된 메서드가 호출된 후에 호출된다.
'Spring' 카테고리의 다른 글
DI(Dependency Injection) 컬렉션 주입 (0) | 2021.07.17 |
---|---|
DI(Dependency Injection) 생성자를 통한 주입 (0) | 2021.07.17 |
빈 객체 생성하기 (0) | 2021.07.15 |
IOC(Inversion Of Control) 컨테이너 (0) | 2021.07.14 |
IOC(Inversion Of Control)제어의 역전 (0) | 2021.07.14 |