Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 트러블슈팅
- 후기
- Flutter
- redis
- F-Lab
- Spring
- grafana
- 도커
- 데이터구조
- github
- java
- 알고리즘
- 백엔드
- 코딩테스트
- 에프랩
- 플러터
- 레디스
- 자바백엔드
- error
- FLAB
- 성능테스트
- MySQL
- EC2
- 로드밸런서
- backend
- 자바
- 멘토링
- AWS
- nGrinder
- 부트캠프
Archives
- Today
- Total
민스씨의 일취일장
TIssue | JPA | 스프링 부트와 JPA 활용 2 - 김영한 | Fetch Join에 distinct 적용 안해도 중복 제거되는 상황 본문
Programming Language & Framework/JAVA & Spring
TIssue | JPA | 스프링 부트와 JPA 활용 2 - 김영한 | Fetch Join에 distinct 적용 안해도 중복 제거되는 상황
읻민스 2024. 11. 28. 17:29반응형
JPA Fetch Join에 distinct 적용안해도 중복이 제거 돼있는 이슈에 대한 내용이다.
상황
인프런 <실전! 스프링 부트와 JPA 활용2 - 김영한> 강의의 '섹션5 - 주문 조회 V3: 엔티티를 DTO로 변환 - 페치 조인 최적화' 실습 중 distinct를 적용하지 않았음에도 중복이 제거되는 상황이 발생했다.
혹시 코드를 잘못적은 것은 아닌지 여러번 확인해 보았지만 코드에 상에는 문제가 없어 보였다. 원인을 찾던 중, 버전 차이 때문은 아닌지 알아보았다.
원인파악
현재 실습을 진행환경은 Java 17, 스프링부트 3.3이다.
스프링 3.3은 HIbernate 6을 사용한다.
Hibernate 6 공식문서를 확인해 보면, 해당 내용이 명시 되어있다.
하이버네이트 6부터는 distinct를 적용하지 않아도 중복 데이터를 메모리에서 제거하기 때문에, distinct를 사용할 필요가 없다.
결론
HIbernate 6부터는 JPA를 이용한 Fetch Join에서 distinct를 사용하지 않아도 자동으로 중복을 제거해준다.
728x90
반응형
'Programming Language & Framework > JAVA & Spring' 카테고리의 다른 글
TIssue | Spring Data JPA | 실전! 스프링 데이터 JPA | Class Projection 안되는 이슈 (0) | 2024.12.05 |
---|---|
Thymeleaf | 재실행 없이 변경사항 반영되도록 하는 방법 (0) | 2024.11.19 |
YdMinS | 스프링 IoC와 DI에 대해서 (0) | 2024.07.10 |
IntelliJ | Java 프로젝트 생성 후 테스트 코드까지 작성해보기 (0) | 2024.05.01 |
TIssue | Postman에서 요청을 보냈는데 Controller에 도달을 안하는 이슈 (0) | 2024.03.04 |