-
카테고리
-
세부 분야
백엔드
-
해결 여부
미해결
어떻게 변수명으로 컨테이너에서 맞는 빈을 리턴해주는 거죠?
18.12.09 13:50 작성 조회수 130
1
@Bean
public String keesun() {
return "keesun";
}
이라는 함수를 선언해서 컨테이너에 등록하고 이거를 꺼내쓸 때
@Autowired
String keesun;
을 선언하셨는데요, keesun이라는 함수명을 참조해서 keesun()함수를 찾아낸 건가요? 함수이름이랑 변수이름만 참고해서 리턴이 되는 건가요?
이게 어떤식으로 변수명을 참고해서 함수를 리턴해주는 건지 궁금합니다.
답변을 작성해보세요.
1
백기선
지식공유자2018.12.09
String이라틑 타입의 빈을 꺼내 쓴 겁니다. 컨테이너 안에 들어있는 빈을 꺼내올 때 @Autowired를 사용하면 꺼내오려는 빈의 타입을 보고 꺼내려고 시도하거든요.
빈을 등록할 때 사용한 함수 이름이 빈의 이름이 되고, 말씀하신대로 그 빈의 이름으로 꺼내 올 수도 있긴합니다. 하지만 여기서는 타입으로 꺼내온 것이며, keesun 대신 다른 이름을 써도 가져올 수 있을거에요.
자세한건 스프링 프레임워크 핵심 기술의 @Autowired 수업에서 다루지만 이 강좌에서 이 정도만 이해하셔도 좋을것 같습니다.
좋은 질문 감사합니다.
답변 1