inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

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

26-2 이론문제 재탕

1

61

1

왜 이름이 Graph engineering인가요?

1

50

2

개인 블로그에 정리하면서 ppt 자료 캡처 해서 넣어도 되나요?

1

56

2

run.py 실행하니 아예 전체다 돌아가요 코드가

1

44

2