[Spring] DI(Dependency Injection)란?

77kkyu·2021년 1월 30일

Spring

목록 보기
1/2

IoC (Inversion of Control)

  • IoC는 한국어로 읽었을 때 더 이해하기 어렵지만, 굳이 번역하자면 제어의 역전이라고 할 수 있다.

  • IoC는 필요한 객체를 직접 말들어 쓰는 것이 아닌, 객체를 생성할 수 있는 틀(클래스 or 메소드)를 작성하는 것을 의미

  • 개발자에 의해 만들어진 틀을 바탕으로 개발자가 직접 객체를 생성하는 것이 아닌 컨테이너에서 객체 생성/소멸등을 관리

  • 즉, 개발자가 직접 컨트롤하는 것이 아닌 컨테이너가 관리하는 방식이기 때문에 제어의 역전이라고 표현한다.

DI (Dependency Injection)

  • DI(의존성 주입)은 각 클래스 간에 의존 관계를 Bean 설정 정보를 바탕으로 컨테이너가 자동으로 연결

  • 즉 객체를 직접 생성하는 것이 아니라 특정 객체를 만들때 필요한 객체를 외부에서 결정 후 생성하는 것을 말함

  • Bean은 Spring IoC 컨테이너가 관리하는 객체, 의존성 주입을 원할 시 Bean이 되어야 한다.

자바 코드로 예시

profile
노오력이 부족해

0개의 댓글