개발바닥곰발바닥
반응형
[Spring] IoC와 DI의 이해
JAVA/Spring 2022. 4. 1. 01:33

IoC(Inversion of Control) 기존의 프로그램은 클라이언트 구현 객체가 스스로 필요한 서버 구현 객체를 생성하고, 연결, 실행하므로써 구현 객체가 프로그램의 제어 흐름을 스스로 조종했다. (객체를 생성하고, 객체 간의 의존성을 만들어주고, 초기화하고 객체를 호출하는 등) 그러나 IoC은 제어의 역전이라는 의미로 프로그램의 제어 흐름을 개발자가 직접 제어하는 것이 아니라 외부에서 관리하는 것을 제어의 역전(IoC)이라고 한다. Spring에서 IoC는 객체의 대한 제어권이 스프링 컨테이너로 역전되기 때문에 xml 파일이나 어노테이션 방식으로 스프링 컨테이너에 Bean(객체)를 등록하면, 스프링 컨테이너에서 Bean의 생명주기(생성, 의존성 설정, 초기화, 소멸)를 모두 관리한다. IoC를 ..

반응형