[Spring] 빈 생명주기 콜백에 대한 나름의 이해

2023. 10. 22. 14:07Spring

빈이 초기화되거나 종료될 때 특정한 목적에 따라 콜백함수를 부르는 것을 의미한다. 

이를 구현하는 방법에는 크게 세 가지가 있고 각각의 방법에서 배울 점이 있다.

 

빈의 생명주기 콜백함수를 부를 수 있는 경우는 두가지이다.

1. 의존관계가 주입이 완료된 직후. 

2. 빈이 소멸되기 직전.

 

생성자 주입을 제외하고는 빈이 생성 -> 의존관계 주입된다.

 

객체의 의존관계 주입과 객체의 초기화는 다른 개념이다. 차이는 '대상'이다.

의존관계 주입은 클래스 내부에서 사용하고 있는 다른 객체를 외부에서 넣어주는 것이다.

객체의 초기화는 객체가 가지고 있는 속성값을 넣어주는 것이다.

 

속성값을 초기화해주는 것은 setter로 한다. 왜냐하면 객체를 생성하는 역할과 초기화해서 사용 가능하도록 만드는 역할은 다르기 때문이다. 따라서 생성자에서 하지 않고 setter로 한다. 유지 보수 측면에서 이게 도움이 되기 때문이다.

의존관계 주입은 생성자 주입으로 한다. 객체는 대부분 변할 일이 없기 때문이다.

 

보통은 객체를 생성하는 일과 초기화하는 것을 분리한다.

하지만 의존관계 주입도 초기화이지만 주입해준 객체가 보통 변할일이 없기 때문에 생성자 주입을 사용하는 것이다.

 

Reference


https://www.inflearn.com/course/lecture?courseSlug=%EC%8A%A4%ED%94%84%EB%A7%81-%ED%95%B5%EC%8B%AC-%EC%9B%90%EB%A6%AC-%EA%B8%B0%EB%B3%B8%ED%8E%B8&unitId=55383

 

학습 페이지

 

www.inflearn.com