깜장콩의 공부일기

Spring 의존성 주입 본문

개발 공부

Spring 의존성 주입

깜장콩_912 2023. 7. 11. 22:07
728x90

의존성 주입 (Dependency Injection - DI)

: 어떤 객체가 사용하는 의존 객체를 직접 만들어 사용하는게 아니라, 주입 받아 사용하는 방법 

ex) new 연산자를 이용해서 객체를 생성하는 것, 외부 서비스에서 가져와서 쓰는 것 

=> 외부 객체를 내부 객체에서 사용할 수 있는 것임. 

 

  • 강한 결합 : 객체 내부에서 다른 객체를 생성하는 것은 강한 결합도를 가지는 구조
  • 느슨한 결합 : 객체를 주입 받는다는 것은 외부에서 생성된 객체를 인터페이스를 통해서 넘겨받는 것

 

 

의존성 주입 3가지 

1. 생성자 주입

2. 필드 주입

3. 수정자 주입

 

DI를 적용하지 않았을 때

  • 결합도 높아짐 -> 확장성 낮아짐

 

DI를 적용했을 때

  • new를 사용하지 않고 @Autowired 어노테이션을 사용
    • @Autowired : 스프링 컨테이너가 관리하는 Bean들 중에 @Autowired로 선언한 객체와 동일한 Bean이 있으면 의존관계를 주입해줌.
      해당 객체가 Bean으로 등록되지 않았다면 주입 불가

 

728x90

'개발 공부' 카테고리의 다른 글

보안 용어  (0) 2024.03.13
Spring Framework  (0) 2023.07.11
AOP 정리  (0) 2023.07.11
쿠키와 세션의 차이  (0) 2023.06.27
REST 정리  (0) 2023.06.15