2018-8-7 DI, IOC container

spring

DI(Dependency Injection)와 IOC컨테이너

  • A객체는 B,C객체에 의존을 하고 있다.(작업을 수행할때, 다른객체를 이용하는것)

다른객체를 이용하는 방법

  1. A객체가 B/C객체를 직접 생성을 한다.
  2. A객체에 setter() or Construct()를 이용해서 B/C객체를 만들 수 있다.
  • 1, 2방법은 너무나도 많이 다른것이다.
  • A객체내에 B,C필드를 만들어놓고, 생성자를 통해 this.b이런식으로 매개변수를 통해 받는다. 외부에서 B,C객체를 생성을 해서 A객체에 넣어준다. 이것이 Injection이다.

  • A객체안에 B필드를 미리 선언을 해놓는다.
  • setter나 생성자를 통해 B객체를 대입을 시킨다.

IOC컨테이너

  • 객체 하나하나를 부품으로 이야기를 할 수 있다.
  • 부품들을(객체들을)담고 있는 컨테이너이다.

Written on August 7, 2018