스프링

스프링 의존자동주입

jw90 2020. 11. 10. 22:05

@Autowired 

스프링 컨테이너에 @Bean 등록하고 객체 사용할 곳에 인자 만들고 해당 어노테이션 붙이면 스프링에서 알아서 찾아줌

 

@Qualifier

설정에서 Bean으로 등록한 동일 객체가 여러 개이면 자동주입할 대상을 정하지 못해서 오류 발생, 이때 자동 주입할 객체를 정해주는 어노테이션

   @Qualifier("한정자")

 

자동주입 시 주의사항

  • 상속 관계인 클래스, 부모클래스에서 동일한 객체를 사용하는 지 확인
  • 자동 주입이 항상 필요하지 않은 경우 @Autowired(required = false)/ Optional, @Nullable
  • 명시적 주입vs 자동주입 = 자동주입이 이김; 자동주입 쓰면 자동주입만 쓰는 게 좋다고 함