JPQL Cursor Pagination
410
chinggin
작성한 질문수 8
0
JPQL을 활용한 커서 페이지네이션 관련해서 질문드릴려고 합니다.
@GetMapping("/items")
@ResponseBody
public List<Item> findAllItemOrderByItemOrderASC(@RequestParam(value = "order", defaultValue = "0") Long itemOrder, @RequestParam(value = "size", defaultValue = "2") Integer size) {
String jpql = "select i from Book i where i.id > :itemOrder order by i.id";
return em.createQuery(jpql, Item.class)
.setParameter("itemOrder", itemOrder)
.setMaxResults(size)
.getResultList();
}
클라이언트에서 마지막 커서 값으로 itemOrder를 준다는 가정하에 이 코드는 문제가 없을까요?
setMaxResults가 쿼리가 얻을 수 있는 결과를 제한하는 역할을 하길래 QueryDSL 말고도 JPQL을 통해 쉽게 커서 페이지네이션이 구현 가능할까해서 질문드립니다.
일대다 같은 경우는 물론 적용하지 못하겠지만 batchSize 옵션을 통해 커서 페이지네이션 조회용으로 쓸 수 있을 것 같습니다..
예시니까 엔티티를 반환했고 레파지토리도 제외했습니다.
포스트맨을 활용하여 사용한 결과는 문제가 없었는데 이렇게 간단히 사용해도 될까요?
답변 0
상금은 언제 받을 수 있나요?
4
68
0
Issuance 테이블에 status, couponId 인덱스가 꼭 필요할까요?
2
49
1
4강 카드뉴스 자동화 자료
4
49
1
부하 테스트 시 설정 관련 질문드립니다
1
78
2





