안녕하세요. 최근 버전에는 fetchResults가 Deprecated붙어서 대신 fetch()가 권장되더라구요.
들어가서 메서드 설명을 읽어보시면 이렇게 쓰여있습니다.
QueryResults 형식으로 프로젝션을 가져옵니다. QueryResults.getOffset() 또는 QueryResults.getLimit()에 의존하지 않는 경우 성능이 더 좋으므로 대신 fetch()를 사용하십시오. 또한 모든 방언에 대해 개수 쿼리를 제대로 생성할 수 없습니다. 예를 들어 JPA에서 count 쿼리는 여러 group by 표현식 또는 having 절이 있는 쿼리에 대해 생성할 수 없습니다. QueryResults 형식으로 프로젝션을 가져옵니다. 쿼리 결과에 총 행 수가 필요하지 않은 경우 대신 fetch()를 사용하십시오.
일부 쿼리에서 count할때 문제가 있으니 앞으로는 fetch()써서 그 결과에 페이징 처리 하라는 것 같은데, Deprecated 뜨면 아무래도 공부하는 입장에서는 안쓰는 게 맞겠죠? 그냥 써도 되나요?
추가로 fetchCount()도 Deprecated 떠요
안녕하세요. 도도새님, 공식 서포터즈 OMG입니다.
.
아래 링크의 영한님답변과 제 답변을 참고해주세요:)
https://www.inflearn.com/questions/361342/%ED%98%84%EC%9E%AC-2-30-%EB%B6%80%EB%B6%84%EC%97%90
버전이 올라가면서 본문에서 말씀하신 차이를 이해하였다면, 스프링부트 버전에 맞게 사용하면 될 것 같습니다 :)
혹 스프링부트3환경에서 강의를 진행중인데, 동작하지 않는다면 댓글남겨주시면 감사하겠습니다. ^^
.
감사합니다.
답글
도도새
2022.12.14이미 답변이 있었군요
감사합니다