작성
·
529
답변 1
1
우선, 초기화에 대해서는 이해하신게 맞습니다.
postConstruct는 빈이 생성된 직후에 동작하고
preDestroy는 빈이 소멸되지 직전에 동작합니다
서로 역할이 다르므로 나눠서 사용됩니다.
그러면 생성자 에서 초기화 하는 대신 postConstruct 를 왜써야 하는가 물어보면
생성자에선 간단한 초기화를 하고
주입이 끝난뒤 복잡한 초기화를 하려고
postConstruct를 쓴다 라고 하면 될까요??
분명 더 깊은 이유가 있을것 같아서요
생성자가 호출될 때에는 의존관계 주입이 완료되지 않은 상태입니다.
postConstruct를 써야 하는 상황은 의존관계 주입이 완료된 후 어떠한 작업(ex 의존관계 주입을 필요로 하는 초기화 작업)입니다.
아마 복잡한 초기화라는 말은 의존관계 주입이 끝난 뒤 할 수 있는, 해야하는 작업을 말하는 것 일 겁니다.
이 이상의 이유는 저도 잘 모르겠네요ㅎㅎ;
그럼 굳이 post 와 pre 를 사용하는 이유가 있을까요?!
제가 이해한 거로는 간단한 초기화는 생성자에서서복잡한 초기화는 주입이 끝난후 로 이해했는데
굳이 나눠서 쓰는 이유가 궁금합니다