해결된 질문
22.08.25 12:55 작성
·
264
답변 1
2
안녕하세요. 김상운님, 공식 서포터즈 David입니다.
persist될 때 team의 id 필드에 값이 들어갑니다.
clear될 때 영속성 컨텍스트 내 캐시가 초기화 됩니다.
즉, team은 id를 가지고 있으나 영속성 컨텍스트에 의해 관리되지 않은 상태이며 jpa는 이를 준영속 상태로 판단합니다.
따라서, member를 저장할 때 id를 가지고 있는 team을 넣어주고 member를 저장하게 되면 정상적으로 저장됩니다.
예상하신대로 예외를 발생시키려면 team을 저장한 뒤 clear 후 team의 id값을 null로 다시 설정하시면 member를 저장할 때 예외가 발생하게 됩니다.
감사합니다.
2022. 08. 26. 14:28
감사합니다!ㅎㅎ 준영속의 개념을 다시 배울 수 있는 좋은 답변이이었습니다!