MyBatis와 스프링에서 페이징처리

cy8erpsycho·2023년 8월 30일
0

스프링

목록 보기
19/29
post-thumbnail

MyBatis와 스프링에서 페이징처리

페이지 번호와 몇 개의 데이터가 필요한지를 별도의 파라미터로 전달하는 방식도 나쁘지 않지만, 아예 이 데이터들을 하나의 객체로 묶어서 전달하는 방식이 나중을 생각하면 좀 더 확장성이 좋다.

Criteria 클래스 생성



MyBatis 처리와 테스트

com.zerock.mapper 패키지의 BoardMapper에 위에서 작성한 Criteria 타입을 파라미터로 사용하는 getListWithPaging() 메서드를 작성한다.

위의 메서드가 동작하려면 쿼리가 동작해야하니까 boardmapper.xml에 다음과 같이 작성한다.

위에서 where rownum<=을 모르고 안썼지 그런데 test가 오류없이 수행되었다.

쿼리에 오류가 없는지 검증하기

위의 테스트가 완료되었으면

서비스메서드를 작성한다.



BoardController와 BoardService 수정

BoardService 수정

기존의 getlist를 크리데리아 인자를 받게 한다

impl도 위와같이 수정한다.

그럼 클라이언트가 cri를 넘겨줘야 하는데 어떻게 넘겨주지?

근데 위와 같이 클라이언트가 주소창에 pageNum,amount를 작성하는것은 이상하다. 이 부분은

0개의 댓글