● 페이징 처리 ③ ( PageMaker.java )
페이지 정보
![profile_image](https://dancepkt.cafe24.com/data/member_image/ad/admin.gif?1630310007)
본문
브라우저 상에서 URI와 파라미터를 조절하는 결과가 온전하게 나온다면 하면 하단에 나오는 페이지 번호가 출력되는 작업을 진행한다.
화면에서 페이징 처리할 결과를 보여주기 위해서는 반드시 몇 개의 데이터가 필요하다.
01. 시작 페이지 번호 ( startPage ) - 예를 들어 화면상에 10개의 페이지 번호를 출력한다고 했을 때, 현재 페이지가 1에서 10의 사이에 있는 번호라면 시작 페이지는 1 되어야 한다.
만일 시작 페이지의 번호가 1 아니라면 '이전 ( prev )'으로 갈 수 있는 링크를 제공해야 한다.
02. 끝 페이지 번호 ( endPage ) - 시작 페이지 번호부터 몇 개의 번호를 보여줘야 하는지를 결정해야 한다.
이때 영향을 미치는 것이 전체 데이터의 개수이다.
예를 들어 전체 데이터가 65개이고, 현재 페이지가 5 라면 시작 페이지는 1 , 끝 페이지 번호는 7 (65 개이므로 7페이지까지는 표시) 되어야 한다.
03. 전체 데이터의 개수 ( totalCount ) - 끝 페이지 번호를 계산할 때 전체 데이터의 개수를 이용해서 최종적으로 끝 페이지의 번호가 결정된다.
만일 끝 페이지 번호보다 많은 양의 데이터가 존재 한다면 '뒤로 ( next )' 갈 수 있는 링크가 추가로 붙게 된다.
04. 이전 페이지 링크 ( prev ) - 맨 앞의 페이지 번호가 1 아니라면 화면상에 링크를 통해서 이전 페이지를 조회할 수 있어야 한다.
05. 이후 페이지 링크 ( next ) - 맨 뒤의 페이지 이후에 더 많은 데이터가 존재하는 경우 이동이 가능하도록 링크를 제공해야 한다.
== 추가 설명 ==
ex) perPageNum = 10 , totalCount = 122 , displayPageNum = 10 //이라고 가정해 보면 다음과 같은 계산이 가능하다.
. page = 3 일 경우
- startPage = 1 , endPage = 10 , next = true , prev = false
. page = 10 일 경우
- startPage = 1 , endPage = 10 , next = true , prev = false
. page = 11 일 경우
- startPage = 11 , endPage = 20 , next = false , prev = true
- 이전글board/registerPage.jsp 24.07.30
- 다음글PageMaker.java 24.07.30
댓글목록
등록된 댓글이 없습니다.