스프링 컨테이너와 스프링 빈
Q1. 스프링 빈이란 무엇인가?
- 스프링 컨테이너에 의해 관리되는 객체를 의미합니다.
Q2. 스프링 컨테이너의 인터페이스는 무엇인가?
스프링 컨테이너는 어떻게 선언하는가?
- 스프링 컨테이너의 인터페이스는 ApplicationContext 입니다.
스프링 컨테이너는 ApplicationContext ac = new AnnotationConfigApplicationContext(AppConfig.class);
와 같이 선언합니다.
Q3. 최근에는 스프링 컨테이너를 XML과 애노테이션 기반의 자바 설정 클래스 중 어떤 것으로 만드는가?
- 애노테이션 기반의 자바 설정 클래스로 만듭니다.
Q4. 스프링 컨테이너 안에는 어떤 것이 있는가?
그리고 그것에는 무엇이 저장되는가?
- 스프링 빈 저장소가 있습니다. 그것에는 빈 이름과 빈 객체가 저장됩니다.
Q5. 스프링 빈의 이름을 정할 때 주의해야 할 점은 무엇인가?
- 중복된 이름을 지정하지 않도록 주의해야 합니다.
Q6. 스프링 컨테이너에서 스프링 빈이 생성된 다음에 어떤 일이 발생하는가?
- 스프링 빈 객체간의 의존 관계를 설정합니다.
Q7. 스프링 빈들을 모두 가져오기 위해서는 어떤 메소드를 써야 하는가?
- getBean() 메소드를 써야 합니다.
Q8. 빈에는 어떤 종류가 존재하고, 각각은 어떤 식으로 명명되는가?
Q9. 스프링 빈 조회 시 동일한 타입이 두 개 이상인 경우는 어떻게 하는가?
- 각각에 이름을 지정해줘야 합니다.
Q10. 스프링 빈 조회 시, 부모 타입으로 조회하면, 어떤 일이 발생하는가?
- 해당 부모 타입의 자식 타입이 전부 조회됩니다.
참고
- 김영한 스프링 핵심 원리-기본편
- Q1~Q10 5.14
- A1~A10 5.16