티스토리 뷰

웹/Spring

[Spring boot] 의존 주입 (DI)

스헤 2020. 11. 24. 17:09
반응형

동영상을 보고 정리한 내용으로 많이 부족할 수 있습니다.

 

DI (Dependency Injection) 의존 주입

구성 요소간의 의존 관계가 소스코드 내부가 아닌 외부의 설정 파일 등을 통해 정의되게 하는 디자인 패턴

 

어노테이션(Annotation)

@SpringBootApplication 의 세 가지 기능

  • @Configuration : 자바 코드로 작성된 클래스를 설정 파일로 지정
  • @EnableAutoConfiguration : 스프링 어플리케이션 컨텍스트를 만들 때 지정해 둔 설정값들을 이용하여 자동으로 설정하는 기능을 켠다.
  • @ComponetScan : 지정한 위치 이하에 있는 @Component와 @Configuration이 붙은 class를 스캔해서 Bean으로 등록한다.

@configuration : 클래스를 스프링 설정으로 사용함을 의미한다.

@Bean : 메서드의 리턴 값을 빈 객체로 사용함을 의미한다.

 

빈(Bean) 

- 스프링이 Ioc 방식으로 관리하는 객체

- 스프링이 직접 생성과 제어를 담당하는 객체

 

빈 팩토리(BeanFactory)

- 스프링의 IoC를 담당하는 핵심 컨테이너

- Bean을 등록, 생성, 조회, 반환하는 기능을 담당

- 이 BeanFactory를 바로 사용하지 않고 이를 확장한 ApplicationContext를 주로 이용함.

 

어플리케이션 컨텍스트(Application Context)

- BeanFactory를 확장한 IoC 컨테이너

- Bean을 등록하고 관리하는 기능은 BeanFactory와 동일하지만 스프링이 제공하는 각종 부가 서비스를 추가로 제공함

- 스프링에서는 ApplicationContext를 BeanFactory보다 더 많이 사용함.

반응형
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함