Spring JPA Open-in-View 경고 해결

2025. 4. 24. 15:49·트러블슈팅

문제

  • 어플리케이션 실행 시, WARN 로그 발생 
spring.jpa.open-in-view is enabled by default. Therefore, database queries may be performed during view rendering. Explicitly configure spring.jpa.open-in-view to disable this warning

원인

  • spring.jpa.open-in-view=true(기본값) 설정 시, View 렌더링까지 영속성 컨텍스트(세션)가 열려 있음
  • View에서 Lazy-loading을 사용하면 View 자체가 DB 접근 주체가 됨
    • 이는 MVC 패턴 위배하며 예측 불가능한 쿼리 실행과 N+1 문제 발생 가능

해결

  • application.yml 에 다음과 같이 설정
spring
  jpa:
    open-in-view: false  // DB 커넥션을 트랜잭션 끝나면 바로 반환!
항목 open-in-view: true open-in-view: false
View에서 Lazy 사용 가능 불가
N+1 발생 위험 높음 낮음
구조적 안정성 낮음 높음
코드 테스트 용이성 낮음 높음
유지보수 효율 낮음 높음

 

저작자표시 비영리 변경금지 (새창열림)

'트러블슈팅' 카테고리의 다른 글

이미지와 데이터 동시 처리 시 발생하는 Multipart 문제 해결  (0) 2025.04.29
Unable to load io.netty.resolver.dns.macos 오류 해결 (Mac DNS 문제)  (0) 2025.04.24
Spring Data Redis: Repository store assignment 문제 해결  (0) 2025.04.24
'트러블슈팅' 카테고리의 다른 글
  • 이미지와 데이터 동시 처리 시 발생하는 Multipart 문제 해결
  • Unable to load io.netty.resolver.dns.macos 오류 해결 (Mac DNS 문제)
  • Spring Data Redis: Repository store assignment 문제 해결
안녕 하리
안녕 하리
  • 안녕 하리
    보초 개발자
    안녕 하리
  • 전체
    오늘
    어제
    • 분류 전체보기 (13)
      • 트러블슈팅 (4)
      • Honey Tip! (5)
      • Language (3)
        • Java (0)
        • Kotlin (1)
        • SQL (2)
      • Cloud (0)
      • ETC (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
안녕 하리
Spring JPA Open-in-View 경고 해결
상단으로

티스토리툴바