Spring IOC
개념
Inversion Of Control
의 약자로 제어의 역전
이라는 뜻
- 제어권이
개발자
에게 있는 것이 아니라 스프링 프레이워크
에게 있음
- Spring Container
가 객체(Bean)의 생성과 의존 관계 설정하는 Life Cycle을 관리하고 제어해 줌
이는 객체의 결합도를 줄이고 유연한 코드 작성이 가능함
가독성 향상
및 코드 중복 방지
, 유지 보수 용이
Spring IoC Container
BeanFactory
- IoC컨테이터의 기능을 정의하고 있는 인터페이스
- Bean의 생성 및 의존성 주입, 생명주기(lifecycle) 관리 등의 기능을 제공
ApplicationContext
- BeanFactory 인터페이스를 상속받는 인터페이스
- BeanFactory가 제공하는 기능 외에 AOP, 메세지처리, 이벤트 처리 등의 기능을 제공