n+11 스프링부트 JPA N+1 문제와 해결 방법 N+1 문제??? 스프링에서 객체 간 연관 관계 설정시에 발생하는 문제로 조회한 데이터만큼의 SQL 쿼리가 추가적으로 발생해 읽어오는 문제를 말합니다. Fetch 전략을 Lazy나 Eager 어떤 전략과 상관없이 N+1 문제는 발생하게 됩니다. 원인 스프링에서 SQL 조회 쿼리를 날려주는 JPQL(Java Persistence Query Language)를 실행하게 되면 JPA가 분석해 쿼리를 작성하게 됩니다. 그러나 JPQL은 Fetch 전략에 대한 정보가 없기 때문에 개발자가 선택한 특성을 무시하고 쿼리를 작성하게 됩니다. 해결 방법 Fetch Join 사용법 @Query("select a from Account a join fetch a.product") List findAllByProducts().. 2022. 1. 18. 이전 1 다음