Hibernate SessionFactory 생성 중 MultipleBagFetchException
SessionFactory 생성 중 "MultipleBagFetchException: 동시에 여러 가방을 가져올 수 없습니다." 예외가 발생하는 경우 검사하는 것이 중요합니다. 엔터티
제공된 예에서 상위에는 하위 하위에 대한 일대다 관계가 포함되어 있습니다. 또한 부모의 자녀 목록을 열심히 가져옵니다. 그러나 다른 "상위" 엔터티인 AnotherParent를 Parent에 포함하면 열심히 가져온 두 개의 컬렉션이 있기 때문에 오류가 발생합니다.
이 문제를 해결하려면 FetchType.EAGER를 사용하는 대신 컬렉션 필드에 다음을 추가하는 것이 좋습니다. @LazyCollection(LazyCollectionOption.FALSE). 이 접근 방식은 컬렉션을 적극적으로 가져오는 것을 피하고 예외를 제거합니다.
대부분의 경우 Set
이 솔루션은 예외를 해결하지만 주의해서 진행하는 것이 중요합니다. Vlad Mihalcea가 "최악의 솔루션"이라는 답변에서 설명한 대로 세트만 사용한다고 해서 데카르트 곱의 가능성이 완전히 제거되는 것은 아닙니다.
위 내용은 SessionFactory 생성 중 Hibernate의 MultipleBagFetchException을 해결하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!