5. 순환 참조 순환 참조는 두 개 이상의 객체나 컴포넌트가 서로를 참조함으로써 의존 관계에 사이클이 생긴 상황을 말한다. 예를 들어 객체 A가 객체 B를 참조하고, 객체 B가 다시 객체 A를 참조하는 양방향 참조는 대표적인 순환 참조의 예다. 이러한 순환 참조는 소프트웨어 설계에서 자주 볼 수 있는 대표적인 안티패턴 중 하나이다. JPA를 사용하다보면 @OneToMany와 @ManyToOne을 이용해 양방향 매핑(bidirectional mapping)을 적용하는 사례를 많이 접할 수 있다. JPA의 양방향 매핑은 순환 참조다. Team과 Member의 예제로도 많이 등장하는 양방향 매핑은 순환 참조라는 죄악의 면죄부처럼 사용되고 있는 거 같기도 하다. 순환 참조의 문제는 엔티티에서만 생기는 것이 아니..