初不得三

[Spring Boot] JPA와 프록시 객체

📌 프록시 객체란? JPA 공부를 하다 보면 프록시 객체라는 개념이 등장한다. 지연 로딩에서 프록시 객체를 로드하는데, 실제로 데이터가 필요할 때까지 실제 객체를 로드하지 않는다. 조금 더 자세히 알아보자. 특징 프록시 객체는 실제 엔티티 객체를 감싸는 가상의 객체로, 실제 데이터가 필요할 때까지 DB 조회를 지연시키는 역할을 한다. 쉽게 표현하...

[Spring Boot] JPA와 N+1 문제, 지연 로딩, 해결 방법

📌 N+1 문제란? N+1 문제 는 연관 관계가 있는 엔티티를 조회할 때 발생할 수 있는 문제이다. 하나의 쿼리를 기대했으나 의도치 않게 N개의 쿼리가 추가로 발생하는 문제를 말한다. 여기서 N개란 기대한 하나의 쿼리의 결과 수이다. 그래서 1+N으로 생각하는 것이 이해하기 쉽다. 보통 JPA를 사용할 때 많이 언급되는 문제이나, 다른 ORM 프...