파일명 : "실전! 스프링 부트와 JPA 활용 2 - API 개발과 성능 최적화 v2022-11-28.pdf"
위치 : "주문 조회 V6: JPA에서 DTO로 직접 조회, 플랫 데이터 최적화" > "OrderQueryRepository에 추가"
쿼리 내 OrderFlatDto 생성자의 인자값이 o.status와 d.address가 뒤바뀌었습니다.
[ 오타 ]
public List<OrderFlatDto> findAllByDto_flat() {
return em.createQuery(
"select new jpabook.jpashop.repository.order.query.OrderFlatDto(o.id, m.name, o.orderDate, o.status, d.address, i.name, oi.orderPrice, oi.count)" +
...
[ 수정 필요 ]
public List<OrderFlatDto> findAllByDto_flat() {
return em.createQuery(
"select new jpabook.jpashop.repository.order.query.OrderFlatDto(o.id, m.name, o.orderDate, d.address, o.status, i.name, oi.orderPrice, oi.count)" +
...
안녕하세요. 데스나이트님
메뉴얼과 영상 자료를 같이 확인해보았습니다.
OrderFlatDto의 생성자를 보면 orderStatus, address 순서로 되어 있습니다^^
제 생각에는 오타가 아닌 것 같아요. 다시 확인 부탁드려요.
답글
데스나이트
2022.12.20확인해보니 오타가 아니네요;;
OrderFlatDto 생성자의 인자값과 OrderFlatDto 클래스의 변수 순서 다르게 되어있어서 헷갈렸나봅니다. ^^;
IntelliJ의 Generate 기능을 사용해서 생성자를 만들었더니만... 불상사가 발생했네요. ㅠㅠ
그렇지만, 강의자료 가독성을 위해서 클래스 변수 순서와 생성자 인자값 순서를 맞춰 주는게 좋지 않을까 싶습니다.
파일명 : "실전! 스프링 부트와 JPA 활용 2 - API 개발과 성능 최적화 v2022-11-28.pdf"
위치 : "주문 조회 V6: JPA에서 DTO로 직접 조회, 플랫 데이터 최적화" > "OrderFlatDto"
[ OrderFlatDto 수정 전 ]
[ OrderFlatDto 수정 후 ]
참고로 강의 영상에서는 [ OrderFlatDto 수정 후 ] 코드로 작성을 하셨습니다.
강의 : "주문 조회 V6: JPA에서 DTO로 직접 조회, 플랫 데이터 최적화"
영상 : "실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화" > 1:59
김영한
2022.12.22ㅎㅎㅎ 데스나이트님 의견에 저도 동의합니다.
처음부터 제가 필드 순서로 생성자를 작성했으면 좋았을 것인데 ㅠㅠ