✨ Programming/Spring
[Spring] DI와 IoC
엉ㅇㅏ
2023. 8. 1. 23:46
DI란?
- 의존성 주입(Dependency Injection, DI)
- 스프링 컨테이너가 필요한 객체를 제공(주입)해준다.
- 의존성 주입 방법
- 생성자 주입
- 수정자 주입(setter 주입)
- 필드 주입
- 일반 메서드 주입
- 어노테이션
- @Autowired
- @Resource
- @Inject
IoC란?
제어의 역전(Inversion of Control, IoC)
개발자가 객체를 직접 생성하거나 제어하는 것이 아닌 스프링 컨테이너에서 관리하고 제공하는 객체를 가져와 사용하는 것을 말한다.
// 개발자가 직접 Dog 객체 생성 public class Animal { Dog dog = new Dog(); }
// 개발자가 직접 Dog 객체를 생성하는 게 아닌 그냥 객체를 선언하기만 함 public class Animal { private Dog dog; }