2025/04/04 2

[Spring] 순환참조문제

필자도 백엔드 첫 프로젝트하면서 순환참조 문제를 겼었었다 ……. 그 당시에는 첫 프로젝트인데 기간은 촉박하고 다른 기술들도 처음 써보는 게 많다보니.. 공부해야할 것도 너무너무 많았고 ..결국 급한대로 @Lazy 애노테이션을 사용해서 임의로 해결 했지만, 나중에 근본적인 순환참조 고리를 끊어내기 위해 리팩토링으로 해결했었다. 설계 자체에 시간을 많이 투자해야된다는 건 알았지만 조급한 마음에 중요성을 간과하고 시작해서 그런 거 같다. 진짜 설계랑 흐름 정리가 제일 중요 !!!!늦었지만 어떤 현상인지 정리해보려고한다.순환 참조 문제란?A 클래스가 B 클래스의 Bean을 주입받고, B 클래스가 A 클래스의 Bean을 주입받는 상황처럼 서로 순환되어 참조할 경우 발생하는 문제.왜 발생하는걸까?먼저, 특정 클래스..

공부 2025.04.04

[Spring] spring의 의존성 주입 방법 4가지

(기본적인 내용이지만, 복습겸 정리 -!)우선, 스프링에서 의존성 주입(Dependency Injection, DI)은 크게 4가지 방법으로 구분된다.생성자 주입생성자를 통해서 의존 관계를 주입하는 방법생성자 주입은 생성자 호출시점에 딱 1번만 호출되는 것이 보장된다.따라서 불변성을 가지는 의존성 주입에 적합하며, 반드시 필요한 의존관계에 사용된다.이때, 크게 private final + 생성자 방식과 @Autowired 기반 생성자방식으로 나눌 수 있다.private final@Servicepublic class MyService { private final MyRepository myRepository; public MyService(MyRepository myRepository) { ..

공부 2025.04.04