본문 바로가기 메뉴 바로가기

je_record

프로필사진
  • 글쓰기
  • 관리
  • 태그
  • 방명록
  • RSS

je_record

검색하기 폼
  • 분류 전체보기 (128)
    • 회고 (3)
    • 안드로이드[Kotlin] (7)
    • 알고리즘 (53)
    • CS (42)
      • 컴퓨터네트워크 (26)
      • 인터넷DB응용 (9)
      • 운영체제 (7)
    • 백엔드 (23)
      • Java (3)
      • 데이터베이스 (3)
      • SpringBoot (11)
  • 방명록

영속성컨텍스트 (1)
LazyInitializationException 왜 발생하고, 어떻게 해결할까🧐

프로젝트 하다가 만났던 LazyInitializationExceptionJPA 공부 후, 발생 원인과 해결법을 한번 정리해보고자 합니다😃 발생 원인서비스 단에 @Transactional을 붙여둔 상태에서 메서드가 종료되면 Hibernate의 Session도 함께 종료되어 영속성 컨텍스트에서 사라집니다.엔티티 객체의 속성 중, FetchType이 LAZY로 설정된 필드가 있었다면, 해당 트랜잭션 내에서, 프록시 객체로 채워진 상태일 것입니다. 이때, get을 통해 데이터를 가져오게 되면 쿼리를 통해 해당 객체를 실제 데이터로 채우게 됩니다.하지만 서비스 단에서 컨트롤러 단으로 코드 흐름이 넘어간 경우, 트랜잭션이 종료되어 영속성 컨텍스트에서 사라진 상태이므로 프록시 객체를 실제 객체로 채우지 못해 Laz..

백엔드/SpringBoot 2024. 1. 6. 20:33
이전 1 다음
이전 다음

Blog is powered by Tistory / Designed by Tistory

티스토리툴바