빈
스프링이 제어권을 가지고 직접 만들고 관계를 부여하는 오브젝트를 빈이라 함
스프링 빈은 스프링 컨테이너가 생성과 관계설정, 사용 등을 제어해주는 제어의 역전이 적용된 오브젝트임
빈 팩토리
스프링의 IOC를 담당하는 핵심 컨테이너 빈을 등록 생성 조회 반환 관리 담당
빈 팩토리를 좀 더 확장한 애플리케이션 컨택스트를 주로 사용함
애플리케이션 컨택스트
빈 팩토리를 확장한 IOC 컨테이너 빈의 등록 관리등은 빈팩토리와 동일 스프링이 제공하는 각종 부가 서비스 추가 제공
싱글톤을 저장하고 관리하는 싱글톤 레지스트리이기도함
애플리케이션 컨텍스트는 IOC방식을 따라 만들어진 일종의 빈 팩토리
애플리케이션 컨택스트와 빈 팩토리는 동일하다고 생각하면 됨
빈 팩토리는 빈을 생성하고 관계르 설정하는 ioc의 기본 기능에 초점을 맞춘것이고
애플리케이션 컨택스트는 애플리캐이션 전반에 걸쳐 모든 구성요소의 제어 작업을 담당하는 IOC 엔진이라는 의미
설정정보
애플리케이션 콘택스트 또는 빈 팩토리가 IOC를 적용하기 위해 사용하는 메타정보
컨테이너
IOC방식으로 빈을 관리한다는 의미에서 IOC컨테이너 라고도함 컨테이너라는 말 자체가 IOC개념 담고있음
싱글톤 레지스트리
자바 방식의 싱글톤은 여러 단점 보유 스프링에서 싱글톤 형태의 오브젝트를 만들고 관리 기능 제공 이것이 싱글톤 레지스트리
스태틱메소드와 프라이빗 생성자를 써야햐는게아니라 평범한 자바클래스를 싱글톤으로 활용하는 장점이 있음
의존관계 검색
의존관계 검색에서는 DI받는 클래스가 빈일필요는없지만 의존관계 주입에서는 빈이여야한다.