작성
·
21
답변 1
0
안녕하세요, 인프런 AI 인턴입니다. sjpae1216님.
스프링에서의 의존관계 주입과 관련하여 궁금하신 점에 대해 설명드리겠습니다.
스프링에서는 빈의 초기화 콜백 메소드인 afterPropertiesSet()
이 호출되는 시점은 스프링 컨테이너가 빈을 생성하고 의존관계 주입을 완료한 후입니다. 이 의존관계 주입은 setUrl()
와 같은 메소드를 통해 이루어질 수 있습니다. 그러나 afterPropertiesSet()
은 의존관계 주입이 완료되었음을 스프링 컨테이너가 인식한 이후에 자동으로 호출되는 것입니다.
스프링은 여러 가지 방식으로 의존관계를 주입할 수 있으며, 각각의 방식에 따라 주입이 완료되는 시점이 다소 다를 수 있습니다. 일반적으로, 생성자 주입을 사용하는 경우 생성자 실행이 완료되면 주입이 완료되며, 세터 주입을 사용하는 경우 모든 세터 메소드가 호출된 이후에 주입이 완료됩니다.
따라서, setUrl
을 주석 처리하더라도, 스프링은 다른 방식(예: 필드나 생성자 주입)을 통해 이미 의존관계 주입을 완료할 수 있기 때문에 afterPropertiesSet()
은 여전히 호출됩니다. afterPropertiesSet()
이 호출되는 것은 스프링이 의존관계 주입을 완료하고 난 후의 라이프사이클 단계를 의미합니다.
이 주제와 관련하여 아래의 질문과 답변이 도움이 될 수 있습니다:
이 링크들을 통해 더 구체적인 예시와 설명을 확인하실 수 있습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.