스프링에서는 다양한 방법으로 DI와 IOC(Injection Of Controller) 를 지원한다. 근데 이들이 어떤것이 존재하는지 알 필요가 있을까? 내 생각에는 종류를 아는 것도 중요하지만, 용어의 뜻부터 아는 것도 중요하다고 생각이 든다. 먼저 DI는 dependency Injection의 약자로 의존성 역전이 되었다는 의미라 할 수 있다. 여기서 의존성이란 존재함을 의미한다. 일반적으로 의존하고 있다는의미는 마치 부모가 자식을 낳는 듯한 느낌처럼 자식이 탄생하기 위해서는 부모가 반드시 있어야 된다는 뜻이다. 이것을 코드화 시켜보자. public class Parents { public void birth() { Child child = new Child(); } } 부모가 birth라는 메서드를..