핵심 키워드 IoC는 Inversion of Control. 즉, 제어의 역전이라는 뜻이다. DI는 Dependency Injection, 즉, 의존성 주입이라는 뜻이다. 분리해서 이해해도 무방하지만, IoC와 DI모두 비슷한 의미를 가지고있어서 IoC 컨테이너 또는 DI 컨테이너라고 불린다. 요즘은 의존관계 주입에 초점을 맞추어 주로 DI 컨테이너라고 불린다. 둘의 공통적인 핵심 역할은 클라이언트의 코드 변경 없이도 기능이 확장이 가능하다는 특징이 있다. 이 둘을 이해하기 위해서는 아래 키워드들을 순차적으로 이해해야한다. Spring Container : 개발자가 작성한 코드를 스스로 참조한 뒤 알아서 객체의 생성과 소멸을 컨트롤 해줌 Bean : 스프링 컨테이너에서 관리되는 객체 DI : 외부에서 객..