[Jsp] Jsp 페이징처리

2015. 2. 25. 15:45프로그래밍/Jsp

Jsp에서 페이징처리


==========================================JSP ==========================================

int resultListCount = 0;


int startpage = 0; //페이징 번호 출력 시 시작번호

int pageCount = 0; // 페이징 번호 출력 시 종료번호

int pageTotalCount = 0; //총 페이지 갯수

int perPage = 10; // 페이지당 갯수 (10개씩)

int pageIndex = 1; //페이지 인덱스


if(null != request.getParameter("page_idx") && !"".equals(request.getParameter("page_idx"))){

pageIndex = Integer.parseInt(request.getParameter("page_idx"));

}


resultList = "리스트 가져오는 부분";  

resultListCount = "리스트 갯수 가져오는 부분";

totalCnt = resultList.size();

pageTotalCount = Integer.parseInt(String.valueOf(Math.round(Math.ceil(resultListCount / 10))));


if(pageTotalCount <= 10){

pageCount = pageTotalCount;

}else{

if(pageIndex / perPage == 0 || pageIndex == perPage){ //자릿수 1 일경우

startpage = 1;

pageCount = perPage;

}else{

if(pageIndex % perPage == 0){


startpage = (pageIndex - perPage) + 1;

}else{

startpage = (Integer.parseInt(String.valueOf(Math.round(Math.floor(((double) pageIndex / (double) perPage))))) * perPage) + 1;

}

pageCount = startpage + (perPage - 1);

}

}

<html>

<body>

<form name="userform">

<input type="hidden" name="page_idx" value="<%=request.getParameter("page_idx") %>" />


<%

if (totalCnt==0){

%>

<tr>

<td colspan="5" height="30" align="center">

등록(검색)된 회원이 없습니다.

</td>

</tr>

<%

}else{


for(int i = 0 ; i < resultList.size() ; i ++){

//조회 리스트 출력부분

}    

%>


<!-- 페이징 -->

<div class="paging wrap">

<%

if(pageIndex != 1){

%>

<a href="#" onClick="movePage(1); return false;" class="first">처음</a>

<a href="#" onClick="prevPage(); return false;" class="prev">이전</a>

<%

}


for(int i = startpage ; i <= pageCount ; i++){

if((pageIndex) != i){

%>

<a href="#" onClick="movePage('<%=i %>'); return false;"><%=i %></a>

<%}else{ %>

<em><%=i %></em>

<%

}

}

%>

<%

if(pageIndex != pageTotalCount){

%>

<a href="#" onClick="nextPage(); return false;" class="next">다음</a>

<a href="#" onClick="movePage(<%=pageTotalCount %>); return false;" class="last">마지막</a>

<%

}

%>

</div>

<!-- //페이징 -->


</form>

</body>

</html>


==========================================SCRIPT==========================================

/**

 * 페이지이동

 */

function movePage(index){

search_list("이동페이지주소", index);

}


/**

 * 다음 페이지

 */

function nextPage(){

var index = <%=pageIndex%> + 1;

search_list("이동페이지주소", index);

}


/**

 * 이전페이지

 */

function prevPage(){

var index = <%=pageIndex%> -1;

search_list("이동페이지주소", index);

}

function search_list(baseaddr, index){

var pageIndex = '';

if(typeof index != "undefined"){

pageIndex = index;

}

var searchField = FID("searchField").value;

var searchValue = FID("searchValue").value;

var addr = "이동페이지주소?page_idx="+pageIndex;

location.href = addr;

}


==========================================HTML ==========================================


'프로그래밍 > Jsp' 카테고리의 다른 글

[JSP] 페이징 채번  (0) 2015.03.04
[JSP] 파일 다운로드  (0) 2015.03.04
[Jsp] Jsp 페이징처리  (0) 2014.04.02
[Jsp] Jsp 엑셀 다운로드  (0) 2014.03.31
[JSP] JSTL 오늘날짜 구하기  (0) 2014.03.24