엔티티 직접 사용 관련 질문입니다.
366
작성한 질문수 2
[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? 예
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)
예
[질문 내용]
안녕하세요 강의를 복습하다가 질문이 생겨서요
"select new jpabook.jpashop.repository.order.query.OrderItemQueryDto(oi.order.id, i.name, oi.orderPrice, oi.count) " +
" from OrderItem oi " +
" join oi.item i " +
" where oi.order.id = :orderId", OrderItemQueryDto.class)다음 소스를 보면 oi.order.id = :orderId 부분에서
예전 강의 내용에서 jpql에서 엔티티를 직접 사용하면 SQL에서 해당 엔티티의 기본 키 값을 사용한다는 내용이 생각나서 oi.order = :orderId로 수정했더니 정상적으로 동작하지 않더라구요. 혹시 다른 내용인걸까요?
답변 1
0
안녕하세요, 이승수 님. 공식 서포터즈 y2gcoder 입니다.
영한님께서 언급하신 부분을 말씀해주시면 좀 더 정확한 답변을 드릴 수 있을 것 같습니다!
말씀해주신 부분만 가지고 제가 조심스럽게 판단해본다면, 아마도
join oi.item i이런 식으로 JPQL을 짜서 DB로 요청을 보낸다면, SQL로 보낼 때 해당 엔티티의 기본 키 값을 가지고 조인하는 것으로 변환되는 것을 언급하시지 않았나 싶습니다 :)
그리고 같은 맥락으로
where oi.order = :order로 바꾸신 뒤, 직접 Order 객체를 넘겨보시면 SQL에서 orderItem의 외래키와 order의 기본키를 비교하는 것으로 변환되어 쿼리가 날아갈 것이라 예상합니다.
감사합니다.
강의 관련 외 질문입니다.
0
68
2
SpringBoot4 + Hibernate7 모듈 등록 방법 공유
0
92
1
BeanCreationException
0
91
3
Update 후 UpdateMemberResponse 매핑할 때
0
50
1
트랜잭션을 사용 안 할 때 커넥션은 언제 가져오나요?
0
101
2
페이징 + 검색조건 관련해서 질문드립니다.
0
70
1
Query Dsl Q파일 질문입니다.
0
84
1
루트 쿼리라는것은
0
60
1
메서드를 분리하는 기준
0
66
1
findAllWithMemberDelivery 메서드 질문드립니다.
0
111
3
연관관계 매핑을 안 쓸 경우, 사용해야 하는 전략
0
86
2
fetch join과 영속화와 OSIV의 관계
0
87
2
Distinct 사용 전 결과에 대한 의문
0
117
2
레포지토리 계층에서의 트랜잭션에 대한 의문
0
59
1
영속성 컨텍스트 생명주기의 신기한 부분이 있습니다.
0
78
2
dto 필드 속 엔티티 여부
0
60
1
뷰템플릿 사용 시
0
77
2
Result 클래스 관련 질문
0
56
1
@PostConstruct 프록시 관련 질문드립니다
0
86
1
DTO 대신 Form 사용은 안되나요?
0
138
1
OSIV ON 상태일 때
0
96
1
fetch join VS fetch join 페이징 궁금증
0
187
2
양방향 연관관계 알아보는 법?
0
107
1
16강 17강 간단 정리 이게 맞을까요 ?
0
166
2





