빈 생명주기 콜백

이름이름·2022년 11월 5일
0

Spring

목록 보기
8/20

초기화 = 객체 다 만들어지고 의존관계다 생성되고나서 처음으로 뭔가 제대로 실행되는것
그래서 의존관계 주입이 완료되면 스프링은 스프링 빈에게 이제 초기화(앱을 이제 사용하라) 하라고 콜백메서드를 통해 알려줌
또 소멸할 때도 소멸콜백을 줌

  • 스프링 빈의 이벤트 라이프사이클
    스프링 컨테이너 생성 ->스프링 빈 생성 의존관계 주입 ->초기화 콜백(이제 주입까지 끝났으니 사용해)-> 사용 ->소멸전 콜백 ->스프링 종료

객체의 생성과 초기화 분리

생성자는 필수 정보(파라미터)를 받고, 메모리를 할당해서 객체를 생성하는 책임을 가진다.
반면에 초기화는 이렇게 생성된 값들을 활용해서 외부 커넥션을 연결하는등 무거운 동작을 수행함
따라서 분리하는게 유지보수 측면에서 좋다

@PostConstruct, @PreDestroy

이거 두 개 사용하면됨
의존관계 주입 끝나면 @PostConstruct 붙은 메서드를 실행하고
소멸전에는 @PreDestroy 붙은 메서드를 실행하게됨

profile
공부 정리

0개의 댓글