Spring Container은 Bean객체들의 생성과 소멸을 관리한다. -> 생명주기(Lifecycle)을 관리한다. 스프링 빈은 간단하게 다음과 같은 라이프사이클을 갖는다. 객체 생성 -> 의존관계 주입 (생성자주입은 예외 : 객체를 만들 때 파라미터로 빈이 미리 들어와야 하기 때문에) 스프링 빈의 이벤트 라이프사이클 (싱글톤) 스프링 컨테이너 생성 -> 스프링 빈 생성 -> 의존관계 주입 -> 초기화 콜백 -> 사용 -> 소멸전 콜백 -> 스프링 종료 * 초기화 콜백 : 빈이 생성되고, 빈의 의존관계 주입이 완료된 후 호출 * 소멸전 콜백 : 빈이 소멸되기 직전에 호출 * 객채의 생성과 초기화를 명확하게 분리하는 것이 좋다. 객체 생성은 메모리에 할당하는 것 까지만, 최소 필요한 데이터를 셋팅 하는..