인프런 커뮤니티 질문&답변
이해한 바가 맞는지요?
작성
·
269
0
안녕하세요 영한님 거의 완강해가네요 다름이아니라
이해한 바가 맞는지 여쭙고싶습니다.
@Test
public void lifeCycleTest(){
ConfigurableApplicationContext ac=new AnnotationConfigApplicationContext(LifeCycleConfig.class);
NetworkClient client=ac.getBean(NetworkClient.class);
ac.close();
}
ac라는 스프링 컨테이너 생성(LifeCycleConfig.class에 정의된 ) ->
client에 NetworkClient 클래스 타입의 스프링 빈을 반환하여 저장 :
1. NetworkClient networkClient = new NetworkClient(); client에 저장하는 과정에서 생성자가 호출
2. networkClient.setUrl("http://hello-spring.dev"); afterPropertiesSet() 에 의해 초기화 진행 connect(), call("초기화 연결 메세지")
ac.close(); -> destroy()에 의해 메서드 소멸- 빈사용 중지됨 // disconnect();
*/
이렇게 이해했는데 맞는것일까요?
퀴즈
41%나 틀려요. 한번 도전해보세요!
스프링 빈 생명주기에서 객체 생성과 초기화 단계를 분리하는 주된 이유는 무엇일까요?
메모리 할당 속도 향상
의존성 주입 완료 시점 문제 해결
생성자 오버로딩 지원
가비지 컬렉션 효율 증대





