스프링 IoC 컨테이너로
{configuration metadata(xml, annotation, java configuration)},
{your business objects(= POJOS = Plain Old Java Object)이 들어오면
=> fully configured system (Bean) 생성해줌.
스프링 컨테이너는 빈을 어떻게 등록할 지, 빈의 라이프 사이클 세부 정보와 빈의 의존관계에 대한 정보를 configuration 메타 데이터를 통해 설정함
1. 가장 고전적인 방법인 xml 설정 파일을 이용할 수 있음
1) 리소스 폴더 하위에 mxl 파일 만들기
2) 등등..
2. 자바 configuration을 통한 방법
-> configuration 어노테이션을 붙이면 자바 클래스 파일을 자바 설정 파일로 등록할 수 있음
-> 자바 설정 파일에서 빈 어노테이션을 사용하여 객체를 생성하고 반환하는 것만으로도 간단하게 빈으로 등록할 수 있음
-> 안 좋은 이유 : 수동으로 빈을 등록해줘야 함, 클래스가 많아질수록 시간이 많이 걸리고 생산력이 떨어짐, 더 편리한 방법이 있다면?
3. 컴포넌트 스캔 기능
컴포넌트 어노테이션을 가진 모든 대상을 가져와서 빈을 등록하기 위해 찾는 과정
-> 컴포넌트 스캔은 컴포넌트 어노테이션이 붙은 모든 클래스들을 자동으로 빈에 등록해줌
추가해서 공부할 내용 : Bean의 scope와 스레드 형식에 따라 다른 Bean의 라이프 사이클.
오 스프링 빈 ... !