자바 공부/스프링공부

스프링 DI와 IOC

ari0930 2024. 5. 8. 18:12

스프링 DI와 IOC

DI란?

  • 객체를 직접 생성하지 않고 외부에서 주입하는 방식을 뜻한다.
  • 객체를 외부에서 생성하고 주입하는 것을 말한다.
  • 클래스 내에서 객체를 생성하는 게 아니라 외부에서 객체를 생성하여 그 객체를 수행하는 형식을 말한다.
  • A가 클래스 B를 필요로 할 때, 클래스 A가 직접 클래스 B를 생성하지 않고, 외부에서 생성된 클래스 B의 인스턴스를 주입받는 것이 DI입니다.

 

IOC란?

  • 제어권을 외부에서 컨트롤하는 방법 스프링에서 제어하는 것을 의미한다.
  • 모든 객체를 메인에서 생성하는게 아니라 분산시킬 수 있다.
  • 객체들을 생성하도록 하여 주입할수 있도록 한다.
  • 빈을 생성하고 필요한곳에 주입하는 것을 IOC 컨테이너라고 한다.

 

스프링에서 DI와 IoC는 코드의 유연성과 확장성을 높이는 데 중요한 역할을 하며, DI를 통해 객체 간의 결합도를 줄이고, IoC를 통해 프레임워크가 객체의 생성과 관리를 담당함으로써 코드의 관리를 용이하게 합니다.

반응형