spring을 공부하다보니 DI에 대해 정확한 정리가 필요하다는 것을 꺠달았다. DI에 대해 정리해 보겠다.
DI는 Dependency Injection 을 줄인말이다. 객체 의존관계를 외부에서 넣어주는 것을 DI(Dependency Injection), 의존성 주입이라고 한다. 의존성 주입은 말 그대로 의존적인 객체를 직접 생성하거나 제어하는 것이 아니라, 특정 객체에 필요한 객체를 외부에서 결정해서 연결시키는 것을 의미한다.
의존성을 주입하기 위해서는 두가지 방법이있다. 첫번쨰는 setter()로 넣어주는 것이고 두번째는 생성자로 넣어주는 것이다.
스프링에서는 객체를 Bean이라고 부르며, 프로젝트가 실행될때 사용자가 Bean으로 관리하는 객체들의 생성과 소멸에 관련된 작업을 자동적으로 수행해주는데 객체가 생성되는 곳을 스프링에서는 Bean 컨테이너라고 부른다.