2007년 12월 01일
게시판에서 페이지 나누기 소스
사용법.
생성자 또는 setPageInfo 메쏘드를 통해 목록 정보 설정
예)
/**
* 페이지 분할 생성자
*
* @param totalNum
* 데이터 전체 갯수
* @param numPerPage
* 한페이지에 출력될 데이터 갯수
* @param pagePerList
* 화면에 보여줄 페이지 갯수
* @param thisPage
* 현재 페이지
*/
PageUtil pu = new PageUtil(totalNum, numPerPage, pagePerList, thisPage);
MVC 패턴 사용자라면 저 PageUtil 을 setAttribute 한 후 jsp에서 가져와
총 게시물 수 : <%= pu.getTotalNum() %>를 출력할 수도 있고,
다음과 같이 페이지 분할을 시킬수도 있습니다.
<%
// 페이지 분할 데이터 추출
int[] outPage = pu.getPage();
// 첫 페이지 부분일 아닐 경우 이전 페이지 부분 버튼 출력
if( !pu.isStartPagePart() )
{
%>
<A href = "./list.do?page=<%= pu.getPreviousPartLastPage() %>">◀</A>
[<A href = "./list.do?page=1">1</A>]...
<%
}
for( int i = 0; i < outPage.length; i++ )
{
// 현재 클릭한 페이지 일 경우
if( outPage[i] == pu.getThisPage() )
{
%>
[<FONT color = "#FF0000"><%= outPage[i] %></FONT>]
<%
}
else
{
%>
[<A href = "./list.do?page=<%= outPage[i] %>"><%= outPage[i] %></A>]
<%
}
}
// 마지막 페이지 부분이 아닐 경우 다음 페이지 부분 버튼 출력
if( !pu.isLastPagePart() )
{
%>
...[<A href = "./list.do?page=<%= pu.getLastPage() %>"><%= pu.getLastPage() %></A>]
<A href = "./list.do?page=<%= pu.getNextPartFirstPage() %>">▶</A>
<%
}
%>
//PageUtil 함수 추가함
<SCRIPT LANGUAGE="javascript">
<!--
//페이지 클릭시 실행될 goPage를 재정의 해서 구현한다.
//아래 printPage 인자로 원하는 함수명을 넣어주고 구현할 수 있다.
function goPage(page_no)
{
document.mainForm.page_no.value = page_no;
CheckConfirm(document.mainForm) ;
}
//-->
</SCRIPT>
<%=pu.printPage("goPage")%>
>> 함보시게 ㅋ PageUtil-jinriver.java
# by | 2007/12/01 11:41 | 트랙백 | 덧글(0)





☞ 내 이글루에 이 글과 관련된 글 쓰기 (트랙백 보내기) [도움말]