작성
·
231
1
1.컨테이너 생성
2.스프링 빈 생성
3.의존관계 주입
4.초기화 콜백
이렇게 완료가 되는걸로 알고있습니다.
@Bean
public NetworkClient networkClient() {
NetworkClient networkClient = new NetworkClient();
networkClient.setUrl("http://hello-spring.dev");
return networkClient;
}
이때 LifeCycleConfig.class에 있는 빈 정보들을 바탕으로 빈 생성하고 의존관계주입등을 하는걸로 알고있는데
여기서 질문이 스프링 컨테이너에 있는 빈은 return networkClient; 즉 리턴된 객체를 뜻하는건가요?
다음 질문은 NetworkClient networkClient = new NetworkClient(); 했을때
생성자가 호출이 되고
public NetworkClient() {
System.out.println("생성자 호출, url = " + url);
}
값주입?? 이 일어난후
networkClient.setUrl("http://hello-spring.dev");
초기화 콜백이 일어나는거 같은데 맞나요??
@PostConstruct
public void init() {
System.out.println("NetworkClient.init");
connect();
call("초기화 연결 메시지");
}
답변 1
0
안녕하세요. 박시균님
여기서 값 주입은 우리가 직접 해준 것이기 때문에 스프링 빈 생성 과정에서 함께 일어납니다.
초기화 콜백은 마지막에 발생하는 것이 맞습니다.
감사합니다.
감사합니다!!