'LAZY'에 해당되는 글 1

  1. 2008.12.07 failed to lazily initialize a collection of role
 

failed to lazily initialize a collection of role

Java/Spring | 2008. 12. 7. 01:16 | Posted by G.N.Jeong J.#
Spring 2.5.x + JPA(Hibernate)를 이용하여 하위리스트를 포함하는 도메인 객체를 불러왔을 때, 기본값인  LAZY 로딩이 되지 않았다.

구글링을 해 본 결과 LAZY 로딩은 트랜젝션 범위내에서 이루어질 수 있다는 답변이 있었다.

그래서 Spring XML설정에서 트랜젝션 관리자를 선언해 주고 설정해 주었지만 되지 않았다.
이유인 즉, Test 코드가 있는 클래스가 설정한 트랜젝션 범위에서 벗어나 있었기 때문이었다.

따라서 @Transactional 이라는 어노테이션을 테스트 클래스에 붙여주고 테스트 하니, 정상적으로 출력이 되었다.

기본적으로 트랜젝션은 annotation을 적용시, annotation이 적용된 메소드가 끝날 때 마무리 된다.
물론 이미 상위 메소드에서 트랜젝션이 있었다면, 기본값인 경우 그 상위 메소드가 끝날 때 마무리 된다.
TAG , ,

댓글을 달아 주세요