yeonghoon.kim

  • 게시판
  • 갤러리
  • aws

페이징 오라클용(row_number 이용)

김영훈 2020.09.12 14:33 조회 수 : 255

"            // [paging - 1] 현재 페이지 취득
            int currentPage = Integer.parseInt(params.get("page"));
            
            // [paging - 2] 총 게시물 수를 구함
            int getBoardListCnt = iBoardService.getBoardListCnt();
            
            // [paging - 3] 페이지당 게시글 수 지정(10개)
            int viewCount = 10;
            
            // [paging - 4] 페이징 개수 지정(5개)
            int pageCount = 5;
            
            // [paging - 5] 시작 게시글 번호 계산 : (현재P - 1) * 페이지당 게시글 수 + 1
            int startCount = (currentPage - 1) * viewCount + 1;
            
            // [paging - 6] 종료 게시글 번호 계산 : 현재P * 페이지당 게시글 수
            int endCount = currentPage * viewCount;
            
            /*
                 [paging - 7] 총 페이지 계산
                 1) 총게시물 수 % 페이지당 게시글의 결과가 0일 아닐 경우 : 총 게시물 수 / 페이지당 게시글 수
                 2) 총게시물 수 % 페이지당 게시글의 결과가 0일 경우 : 총게시물 수 / 페이지당 게시글 수  + 1
             */
            int maxPageCount = 0;
            if(getBoardListCnt % viewCount > 0) {
                maxPageCount = (getBoardListCnt / viewCount) + 1;
            } else {
                maxPageCount = getBoardListCnt / viewCount;
            }
            /*
                 [paging - 8] 현재 페이지 기준 시작 페이지 번호 계산
                 1) 현재 페이지 % 페이징 개수의 결과가 0이 아닐 경우 : (현재 페이지 / 페이징 개수) + 1
                 2) 현재 페이지 % 페이징 개수의 결과가 0일 경우 : 현재 페이지 - 페이징 개수 + 1
             */
            int startPageCount = 0;
            if(currentPage % pageCount != 0) {
                startPageCount = (currentPage / pageCount) + 1;
            } else {
                startPageCount = currentPage - pageCount + 1;
            }
            /*
                 [paging - 9] 현재 페이지 기준 종료 페이지 번호 계산
                 시작 페이지 + 페이징 개수 - 1(단, 최대 페이지보다 클 경우  종료페이지는 최대페이지로...)
             */
            int endPageCount = startPageCount + pageCount - 1;
            
            if(endPageCount >= maxPageCount) {
                endPageCount = maxPageCount;
            }
 "

  • 추천 0

  • 비추천 0
이 게시물을
목록

댓글 0

사진 및 파일 첨부

여기에 파일을 끌어 놓거나 왼쪽의 버튼을 클릭하세요.

파일 용량 제한 : 0MB (허용 확장자 : *.*)

업로드 중... (0%)

0개 첨부 됨 ( / )
 
번호 제목 글쓴이 날짜 조회 수
공지 2025 일본 여행 계획 김영훈 2024.10.10 1108
공지 현금, 저축, 투자, 지출, 예산, 보험 내역(2024-05-30) 김영훈 2024.03.10 765
125 학원 20200602 정리(게시판 기본 로직) 김영훈 2020.06.02 215
124 학원 20200608 정리(세션, 로그인, AOP) 김영훈 2020.06.08 310
123 학원 20200609 정리(동기/비동기 방식, ajax) 김영훈 2020.06.09 382
122 학원 20200610 정리(라이센스) 김영훈 2020.06.10 206
121 학원 20200618 정리(스트림, 업로드, jquery.form) 김영훈 2020.06.18 261
120 학원 20200619 정리(형상관리, git) 김영훈 2020.06.19 268
» 페이징 오라클용(row_number 이용) 김영훈 2020.09.12 255
118 페이징 mysql용(limit 이용) 김영훈 2020.09.12 344
117 집 와이파이 정보 김영훈 2020.09.14 190
116 nginx 413 Request Entity Too Large 에러 해결 김영훈 2020.09.15 409
115 이클립스 깃 연동 김영훈 2020.09.24 218
114 심야시간대 서울고속버스터미널 탈출 방법 김영훈 2020.09.27 270
113 스프링부트 Gradle Project 기본 설정 김영훈 2020.09.27 246
112 스프링부트 구조 김영훈 2020.09.28 236
111 인텔리제이 프로젝트 자바 버전 맞추기 김영훈 2020.09.28 210
110 스프링 DI 방법, DI 김영훈 2020.09.30 252
109 객체 지향 프로그래밍 및 설계의 다섯가지 기본 원칙(SOLID) 김영훈 2020.10.01 262
108 iwinv S3browser 계정 설정 김영훈 2020.10.15 211
107 iwinv Object Storage 버킷 정책 설정(referer) 김영훈 2020.10.15 277
106 오라클 클라우드 인스턴스 생성 김영훈 2020.10.18 285
쓰기 태그
 첫 페이지 3 4 5 6 7 8 9 10 11 12 끝 페이지