我的分页类

我的分页类


/**
 * ***************
 * html page code
 * ***************
 *  <tr>
 *  <td>
  <logic:notEqual value="1" name="pageIndex">
   <label οnclick="doPostBack('fpage')" > frontPage</label>
  </logic:notEqual>
  <logic:lessThan value="${sessionScope.pages}" name="pageIndex">
   <label οnclick="doPostBack('npage')" >nextPage</label>
  </logic:lessThan>
 </td>
 </tr>
 <tr>
  <td>
   共${sessionScope.pages}page
   目前第:${sessionScope.pageIndex}ページ
   総計:${sessionScope.count}記録
  </td>
 </tr>
 //<if ${sessionScope.count == 0}">
  記録がない
 *******************
 * action/servlet page 
 *******************
 *if(type.equals("npage"))
  pageList = new MyPage(list,10,pageidx + 1,session).getPageList();
 else{
  pageList = new MyPage(list,10,pageidx - 1,session).getPageList();
 }
 
*/

import  java.util.List;

import  javax.servlet.http.HttpSession;

public   class  MyPage  {
 
private int pageSize;
 
private int pageIndex;
 
private int count;
 
private int pages;
 
private List list = null;
 
private HttpSession session = null;

 
public MyPage(List list,int pageSize,int pageIndex){
  setList(list);
  setPageSize(pageSize);
  setPageIndex(pageIndex);
  setPageInit();
 }

 
 
/**
  * 
  * 
@param list
  * 
@param pageSize
  * 
@param pageIndex
  * 
@param session has pageSize,pageIndex,count,pages
  
*/

 
public MyPage(List list,int pageSize,int pageIndex,HttpSession session){
  setList(list);
  setPageSize(pageSize);
  setPageIndex(pageIndex);
  setSession(session);
  setPageInit();
 }

 
 
/**
  *  lsit size
  * 
@return
  
*/

 
public int getCount() {
  
return count;
 }


 
/**
  * pages
  * 
@return
  
*/

 
public int getPages() {
  
return pages;
 }


 
/**
  * data list
  * 
@return
  
*/

 
public List getList() {
  
return list;
 }

 
public void setList(List list) {
  
if(list != null && list.size() > 0)
   
this.list = list;
 }

 
/**
  * http session
  * 
@return
  
*/

 
public HttpSession getSession() {
  
return session;
 }


 
public void setSession(HttpSession session) {
  
if(session != null)
   
this.session = session;
 }

 
 
/**
  * pageIndex
  * 
@return
  
*/

 
public int getPageIndex() {
  
return pageIndex;
 }

 
public void setPageIndex(int pageIndex){
  
this.pageIndex = pageIndex > 0 ? pageIndex : 1;
 }

 
 
/**
  * pageSize
  * 
@return
  
*/

 
public int getPageSize() {
  
return pageSize;
 }

 
public void setPageSize(int pageSize){
  
this.pageSize = pageSize > 0 ? pageSize : 5;
 }

 
 
private void setPageInit(){
  count 
= this.list.size();
  pages 
= count%pageSize == 0 ? count/pageSize : count/pageSize + 1;
 }

 
 
/**
  * get current page
  * 
@return
  
*/

 
public List getPageList(){
  List pageList 
= null;
  
if(count > 0){
   
if(pageIndex > pages)pageIndex = pages;
   
   
int startIndex = pageSize*(pageIndex-1);
   
int endIndex = pageSize * pageIndex -1;
   
if(endIndex >= count)endIndex= count-1;
   
   pageList 
= list.subList(startIndex,endIndex + 1 );
   
if( session != null ){
    session.setAttribute(
"pageList", pageList);
    session.setAttribute(
"pageIndex", pageIndex);
    session.setAttribute(
"pageSize", pageSize);
    session.setAttribute(
"count", count);
    session.setAttribute(
"pages", pages);
   }

  }

  
else{
   
if( session != null )
    session.setAttribute(
"count"0);
  }

  
return pageList;
 }

 
 
public void removePage(){
  
try{
   session.removeAttribute(
"pageIndex");
   session.removeAttribute(
"pageSize");
   session.removeAttribute(
"count");
   session.removeAttribute(
"pages");
   session.removeAttribute(
"pageList");
  }
catch(Exception e){}
 }

}

 

html 页面例子(struts)

javascript 控制提交

< script language = " javascript " >
<!--
    
function  doPostBack(eventTarget)  {
        
var theform = document.forms[0];
        theform.submitType.value 
= eventTarget;
        theform.submit();
    }

//  -->
</ script >

 

页面改变代码

< td  colspan ="6"  align ="center" >
    
< logic:notEqual  value ="1"  name ="pageIndex" >
     
< label  onclick ="doPostBack('fpage')"  style ="color:Teal;font-family:MS 明朝;font-size:Small;" >< < frontPage </label >
    
</ logic:notEqual >
    
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
    
< logic:lessThan  value ="${sessionScope.pages}"  name ="pageIndex" >
     
< label  onclick ="doPostBack('npage')"  style ="color:Teal;font-family:MS 明朝;font-size:Small;" > nextPage >> </ label >
    
</ logic:lessThan >
    
</ td >

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值