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
54
2
inheritance startegy 선택시 고려사항
0
36
1
Entity 동등성 비교
0
38
1
실무 조언 관련 질문입니다.
0
64
1
H2데이터베이스 파일 생성
0
76
2
서브쿼리 강의에서 ALL 예시 관련 질문드립니다.
0
66
2
수정또는 삭제시 영속성 엔티티에 값이 무조건 있어야 하나요?
0
62
1
JPQL 메소드와 락
0
62
1
Delivery @OneToOne
0
70
1
17강 4~5분대 테이블 값 조회가 안됩니다.
0
104
2
UnsupportedOperationException 발생
0
97
3
H2 Database 연결이 안됩니다.
0
101
2
연관관계 매핑 질문드립니다.
0
93
2
h2데이터베이스 실행오류
0
114
2
persistence.xml
0
119
2
양방향 연관관계에서 연관관계의 주인(mappedBy)을 왜 꼭 정해야 하나요?
0
87
1
영속성 컨텍스트
0
74
1
JPA 프록시
0
105
1
Native Query와 MyBatis
0
81
1
영속성 컨텍스트는 어떤 메모리에 저장되는건가요?
0
97
1
임베디드 타입 예시 코드 관련 질문
0
125
3
명시적 조인에서 별칭을 주면 왜 객체에 접근할 수 있나요
0
100
3
인텔리제이 패키지 커서 단축키 질문
0
112
2
혹시 현재는 ID 데이터 타입이 String이면 안되나요?
0
151
1





