테스트 코드를 작성해본다.
@Test
public void testPageDefault(){
//페이지처리는 0부터 시작된다.
Pageable pageable = PageRequest.of(0, 10);
Page<Memo> result = memoRepository.findAll(pageable);
log.info(result);
}
위 테스트 코드에선 1페이지에서 10개의 데이터를 가져오기 위해서 파라미터로 0,10을 전달하고 있다.
Hibernate:
select
m1_0.mno,
m1_0.memo_text
from
tbl_memo m1_0 limit ?,
?
Hibernate:
select
count(m1_0.mno)
from
tbl_memo m1_0
@Test
public void testPageDefault2(){
Pageable pageable = PageRequest.of(0, 10);
Page<Memo> result = memoRepository.findAll(pageable);
// log.info( " - - - - - - - - - - - - - - - - - - - - ");
// log.info( " 총 페이지 개수 : " + result.getTotalPages());
// log.info( " 전체 개수 : " + result.getTotalElements());
// log.info( " 현재 페이지 번호 : " + result.getNumber());
// log.info( " 페이지당 데이터 개수 : " + result.getSize());
// log.info(" 다음 페이지 여부 : " + result.hasNext());
// log.info(" 시작 페이지 여부 : " + result.isFirst());
for(Memo memo : result.getContent()){
log.info(memo);
}
}
//정렬 조건 추가하기
@Test
public void testSort(){
//역순정렬
Sort sort1 = Sort.by("mno").descending();
Sort sort2 = Sort.by("memoText").ascending();
Sort sortAll = sort1.and(sort2);
Pageable pageable = PageRequest.of(0, 10, sortAll);
Page<Memo> result = memoRepository.findAll(pageable);
result.get().forEach(memo -> {
log.info(memo);
});
}
Hibernate:
select
m1_0.mno,
m1_0.memo_text
from
tbl_memo m1_0
order by //order by 절이 추가됨
m1_0.mno desc,
m1_0.memo_text limit ?,
?
Hibernate:
select
count(m1_0.mno)
from
tbl_memo m1_0