본문 바로가기

Spring

IOC(Inversion Of Control) 컨테이너

인터넷 강의를 듣고 공부한 내용을 포스팅합니다.

'윤재성의 스프링 프레임워크 개발자를 위한 실습을 통한 입문 과정' 이란 강의를 듣고 있습니다.

 

IOC 컨테이너

우리가 정해놓고 적어놓은 MetaData를 토대로 IOC컨테이너가 클래스를 가지고 객체를 생성해서 사용할 수 있도록 해줍니다. 우리가 작성 할 MetaData는 XML과 JAVA파일을 사용 할 수 있는데 초창기부터 사용했던 XML방법으로 알아보겠습니다.(추후 JAVA파일 사용도 볼 것)

 

IOC 컨테이너의 종류

BeanFactory - 옛날 거

  • 클래스를 통해 객체를 생성하고 이를 전달한다.
  • 상속 등 객체 간의 관계를 형성하고 관리한다.
  • Bean에 관련된 설정을 위한 xml파일은 즉시 로딩 , 객체는 개발자 요구 시에

 

ApplicationContext - 요즘 많이 쓰는 거

  • BeanFactory가 할 수 있는 것은 다 할 수 있다..
  • 국제화 지원 등 문자열에 관련된 다양한 기능 제고
  • 리스너로 등록되어 있는 Bean에 이벤트 발생 가능
  • BeanFactory와 달리 로딩시에 객체를 미리 생성해서 가지고 있을 수 있다.

 

현재 ApplicationContext를 많이 쓴다고 해도 모든 곳에서 요즘 spring을 사용하는 것도 아니고 알아 둘 필요 있다.