Circular dependency 문제점

엄진환·2021년 8월 18일
0

Circular dependency(순환 의존성)

육하 원칙으로 개념을 정리해보자...

  • 누가 발생시키나요?
    • Spring의 IoC 컨테이너
  • 언제 발생하나요?
    • @Bean으로 Spring IoC 컨테이너에 등록할 때
  • 어디서 발생하나요?
    • 두 객체의 생성자 주입방법이 서로의 인스턴스인 곳에서 발생
  • 무엇을 발생시키나요?
    • BeanCurrentlyInCreationException을 냅니다.
  • 어떻게 동작하나요?
    • Spring의 Bean 생성 순서 Bean A(B) > Bean B(C) > Bean C()
      1. Bean C를 생성
      2. Bean B를 생성 후 Bean C를 주입
      3. Bean A를 생성 후 Bean B를 주입
  • 왜 에러가 날까요?
    • Bean A(B) > Bean B(A)의 경우
      • 서로가 객체의 의존성 주입를 실행하면서 무한 재귀나 기타 오류가 발생할 수 있습니다.
profile
개발 공부 블로그

0개의 댓글

관련 채용 정보