JPA에서 엔티티 반환 시 문제와 해결 방법

Hyeok·2025년 3월 17일

엔티티 반환 시 문제점

LazyInitializationException: LAZY 로딩된 연관 엔티티가 세션 종료 후 접근할 때 발생.
성능 문제: 불필요한 연관 데이터를 가져와 성능 저하.

해결법

  • DTO 사용: 필요한 데이터만 반환하여 성능 최적화.
  • JOIN FETCH 사용: 연관 데이터를 미리 로드하여 지연 로딩 문제 해결.
  • 트랜잭션 범위 내 처리: 세션이 열려 있어야 연관 데이터 조회 가능.

연관관계와 toString

연관관계가 하나일 때: 무한 루프 문제 없음.
연관관계가 둘 이상일 때: @ToString.Exclude로 무한 루프 방지.

profile
공부하면서 정리한 블로그입니다. 혹시 잘못된 내용이 있다면 댓글로 알려주시면 큰 도움이 됩니다. 감사합니다!

0개의 댓글