컨텐츠
순환의 고리 끊기: Spring Boot에서 순환 의존성 문제 해결하기
2025-02-13 16:00
언젠가 읽기
순환 의존성 문제 개요
- 스프링 부트에서 자주 발생하는 문제 설명
- 두 개 이상의 빈이 서로 의존하는 상황 정의
순환 빈 참조 예시
- 클래스 A가 클래스 B의 기능 필요
- 클래스 B가 클래스 A의 기능 필요
- 서로 의존하여 무한 루프 발생
순환 의존성 해결 전략
1. Setter 주입 사용
- 생성자 주입 대신 Setter 주입 권장
- 객체 먼저 생성 후 의존성 주입 가능
2. @Lazy 어노테이션 활용
- 의존성 주입 시 @Lazy 사용
- 실제 사용 시점에 의존성 주입으로 해결
3. 설계 변경
- 클래스를 재설계하여 순환 의존성 방지
- 유지보수성 및 확장성 향상
참고 자료
- Spring Framework 순환 의존성 이해하기
- 스프링 부트 의존성 주입의 기본
- 효과적인 스프링 애플리케이션 설계 방법