yeonghoon.kim

  • 게시판
  • 갤러리
  • aws

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

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

"            // [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 1309
공지 현금, 저축, 투자, 지출, 예산, 보험 내역(2024-05-30) 김영훈 2024.03.10 1031
126 학원 20200602 정리(게시판 기본 로직) 김영훈 2020.06.02 229
125 학원 20200608 정리(세션, 로그인, AOP) 김영훈 2020.06.08 324
124 학원 20200609 정리(동기/비동기 방식, ajax) 김영훈 2020.06.09 400
123 학원 20200610 정리(라이센스) 김영훈 2020.06.10 221
122 학원 20200618 정리(스트림, 업로드, jquery.form) 김영훈 2020.06.18 277
121 학원 20200619 정리(형상관리, git) 김영훈 2020.06.19 280
» 페이징 오라클용(row_number 이용) 김영훈 2020.09.12 266
119 페이징 mysql용(limit 이용) 김영훈 2020.09.12 374
118 집 와이파이 정보 김영훈 2020.09.14 208
117 nginx 413 Request Entity Too Large 에러 해결 김영훈 2020.09.15 420
116 이클립스 깃 연동 김영훈 2020.09.24 256
115 심야시간대 서울고속버스터미널 탈출 방법 김영훈 2020.09.27 276
114 스프링부트 Gradle Project 기본 설정 김영훈 2020.09.27 261
113 스프링부트 구조 김영훈 2020.09.28 242
112 인텔리제이 프로젝트 자바 버전 맞추기 김영훈 2020.09.28 221
111 스프링 DI 방법, DI 김영훈 2020.09.30 269
110 객체 지향 프로그래밍 및 설계의 다섯가지 기본 원칙(SOLID) 김영훈 2020.10.01 280
109 iwinv S3browser 계정 설정 김영훈 2020.10.15 222
108 iwinv Object Storage 버킷 정책 설정(referer) 김영훈 2020.10.15 293
107 오라클 클라우드 인스턴스 생성 김영훈 2020.10.18 299
쓰기 태그
 첫 페이지 3 4 5 6 7 8 9 10 11 12 끝 페이지