mappedBy로 조회할 때 질문.(프록시의 관계)
저어어쪽 Querydsl 강의 초반부 듣다가
갑자기 프록시에 대한 개념(지연로딩)으로 인해 생긴
mappedBy의 의문점으로 이리저리 고생 끝에
확인차 이 강의로 와서 질문 드립니다 .
@Entity
@Getter @Setter
public class TestTeam {
@Id @GeneratedValue
@Column(name="TESTTEMA_ID")
private Long id;
private String name;
@OneToMany(mappedBy = "team")
private List<TestMember> members = new ArrayList<>();
}
@Entity
@Getter @Setter
public class TestMember {
@Id @GeneratedValue
@Column(name = "TESTMEMBER_ID")
private Long id;
private String name;
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "TESTTEAM_ID")
private TestTeam team;
}
일 때,
@Test
public void test() {
TestTeam teamA = new TestTeam();
teamA.setName("teamA");
em.persist(teamA);
처럼 em.persist(teamA)를 하면
1차 캐시에
{id = 1(예시), name = "teamA", List<TestMember> members = 프록시} 로 저장되는게 아니라
{id = 1(예시), name = "teamA", List<TestMember> members = null} 로 저장되고
조회할 때 1차 캐시에,
{id = 1(예시), name = "teamA", List<TestMember> members = 프록시} 로 저장되는 거죠 ?
뭔가 풀고 나니 바보같은 질문인 것 같기도 하고..그런데
확인차 질문드립니다 :[
벌크연산에서 member.getAge 호출 시 영속성 컨텍스트에서 데이터를 가져오는건가요?
0
25
2
inheritance startegy 선택시 고려사항
0
22
1
Entity 동등성 비교
0
18
1
실무 조언 관련 질문입니다.
0
46
1
H2데이터베이스 파일 생성
0
56
2
서브쿼리 강의에서 ALL 예시 관련 질문드립니다.
0
52
2
수정또는 삭제시 영속성 엔티티에 값이 무조건 있어야 하나요?
0
52
1
JPQL 메소드와 락
0
55
1
Delivery @OneToOne
0
60
1
17강 4~5분대 테이블 값 조회가 안됩니다.
0
93
2
UnsupportedOperationException 발생
0
86
3
H2 Database 연결이 안됩니다.
0
92
2
연관관계 매핑 질문드립니다.
0
85
2
h2데이터베이스 실행오류
0
107
2
persistence.xml
0
106
2
양방향 연관관계에서 연관관계의 주인(mappedBy)을 왜 꼭 정해야 하나요?
0
80
1
영속성 컨텍스트
0
66
1
JPA 프록시
0
95
1
Native Query와 MyBatis
0
68
1
영속성 컨텍스트는 어떤 메모리에 저장되는건가요?
0
87
1
임베디드 타입 예시 코드 관련 질문
0
114
3
명시적 조인에서 별칭을 주면 왜 객체에 접근할 수 있나요
0
94
3
인텔리제이 패키지 커서 단축키 질문
0
108
2
혹시 현재는 ID 데이터 타입이 String이면 안되나요?
0
144
1





