인프런 커뮤니티 질문&답변

11 1님의 프로필 이미지
11 1

작성한 질문수

스프링 핵심 원리 - 기본편

빈 등록 초기화, 소멸 메서드

의존 관계 주입이 끝나는 시점

해결된 질문

작성

·

166

0

[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (예)
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)

[질문 내용]

sdfg.jpg

초기화 메서드는 의존 관계 주입이 끝난 후에 실행된다고 이해했습니다.

 

그런데 의존 관계 주입 단계라는 구간은 정확히 언제까지인가요?

 

이 코드의 경우엔 setUrl()에서 의존 관계 주입이 일어나지만

스프링이 초기화 메서드를 실행하려면 의존 관계 주입이 끝났다는 것을 정확히 파악해야 할 것 같은데

 

스프링은 다음 중 어떤 식으로 의존 관계 주입이 끝났다는 것을 판단하나요?

 

1) setUrl()이 호출된 이후, 즉시 의존 관계 주입이 끝났다는 것을 판단할 수 있다.

2) networkClient() 메서드 호출이 완전히 끝날 때(return문의 실행이 끝나고 나서)까지가 의존 관계 주입이라고 판단한다.

3) 기타..

 

혹시 강의 때 말씀하셨었나요? pdf로 복습하는 중인데 이 부분이 궁금하네요..

답변 1

2

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. 11 1님

2번 이후에 스프링이 추가로 필요한 의존관계를 주입합니다. 예를 들어서 @Autowired, 생성자 주입 등등이 있습니다. 이런 과정을 스프링이 모두 끝내고 나면 의존관계 주입이 끝났다고 표현할 수 있습니다.

이후에 스프링은 초기화 콜백을 호출합니다.

 

강의 내용에 나온 다음을 참고해주세요.

스프링 빈의 이벤트 라이프사이클

스프링 컨테이너 생성 -> 스프링 빈 생성 -> 의존관계 주입 -> 초기화 콜백 -> 사용 -> 소멸전 콜백 -> 스프링 종료

*초기화 콜백**: 빈이 생성되고, 빈의 의존관계 주입이 완료된 후 호출

*소멸전 콜백**: 빈이 소멸되기 직전에 호출

 

감사합니다.

11 1님의 프로필 이미지
11 1
질문자

답변 감사합니다!

11 1님의 프로필 이미지
11 1

작성한 질문수

질문하기