봉봉의 개인 블로그

2019-02-18(Spring DI Dependency Injection) 본문

입사후 공부한내용

2019-02-18(Spring DI Dependency Injection)

봉봉이네 2019. 2. 18. 14:54

DI 란 ? (의존성 주입)

  • DI란 스프링만의 기능은 아니다. OOP(객체지향프로그래밍)에서 자주 이용되는 프로그래밍 방법중 하나이다.
  • Java 계열의 다른 프로그래밍을 해봤다면, 이미 사용해본 경험이 있을 수 있음.
  • DI 아이폰과 삼성폰에 비유가능
    - 아이폰은 배터리가 일체형이라, 배터리 수명이 다 했을 때 단순히 배터리만 갈아끼우면 되지만, 센터에 방문하지 않는 이상 불가능
    - 삼성폰은 배터리 수명이 다해도 배터리만 교체하면 다시 이용가능
    - 여담이지만 요즘은 둘 다 일체형으로 나와서 삼성폰도 교체 불가능
    - 프로그래밍에 비유하자면 유연성 있게 필요한 객체를 붙였다가 뗐다가 할 수 있음
  • 의존하는 어떤 객체를 주입하는 것이 결국 DI

스프링 DI 와 스프링 컨테이너

  • 스프링 컨테이너 생성 및 빈 객체 호출
    - 빈 객체를 필요로 하는 로직
    - 빈은 스프링에서 주로 .xml 설정파일에 작성되어 있음
    - getBean이라는 간단한 메소드로 언제든지 Bean을 이용 가능
  • 컨테이너 내부 객체끼리 서로 의존 주입 관계를 가지는 것이 DI


Comments