路人

导航

<2006年3月>
2627281234
567891011
12131415161718
19202122232425
2627282930311
2345678

统计

常用链接

留言簿

随笔档案(39)

相册

搜索

积分与排名

最新评论

阅读排行榜

评论排行榜

JAVA时间日期 和 分页

package com.ld.model;

import java.util.*;

import java.text.*;

public class DateTime {
    
public static void main(String[] args) {
        String time
=DateTime.datetimes();
        System.out.print(time);
    }

    
    
public static String datetimes(){
        SimpleDateFormat formatter 
        
= new SimpleDateFormat ("yyyy-MM-dd HH:mm:ss"); 
        Date currentTime 
= new Date(); 
        String dateStr 
= formatter.format(currentTime); 
        
return dateStr;
    }

}
package com.ld.model;

import java.util.*;

public class Page {
    
int currentPage = 1;// 当前页数

    
public int totalPages = 0;// 总页数

    
int pageRecorders = 8;// 每页显示数

    
int totalRows = 0;// 总数据

    
int pageStartRow = 0;// 每页的起始数

    
int pageEndRow;// 每页的终止数

    
boolean hasNextPage = false;// 是否有下一页

    
boolean hasPreviousPage = false;// 是否有前一页

    ArrayList arrayList;

    Iterator it;

    
public Page(ArrayList arrayList) {
        
this.arrayList = arrayList;
        totalRows 
= arrayList.size();
        it 
= arrayList.iterator();
        hasPreviousPage 
= false;
        currentPage 
= 1;
        
if ((totalRows % pageRecorders) == 0{
            totalPages 
= totalRows / pageRecorders;
        }
 else {
            totalPages 
= totalRows / pageRecorders + 1;
        }

        
if (currentPage >= totalPages) {
            hasNextPage 
= false;
        }
 else {
            hasNextPage 
= true;
        }

        
if (totalRows < pageRecorders) {
            
this.pageStartRow = 0;
            
this.pageEndRow = totalRows;
        }
 else {
            
this.pageStartRow = 0;
            
this.pageEndRow = pageRecorders;
        }

    }


    
public void setCurrentPage(int currentPage) {
        
this.currentPage = currentPage;
    }


    
public void setPageRecorders(int pageRecorders) {
        
this.pageRecorders = pageRecorders;
    }


    
public void setHasNextPage(boolean hasNextPage) {
        
this.hasNextPage = hasNextPage;
    }


    
public void setHasPreviosPage(boolean hasPreviosPage) {
        
this.hasPreviousPage = hasPreviosPage;
    }


    
public String getCurrentPage() {
        
return this.toString(currentPage);
    }


    
public String getTotalPages() {
        
return this.toString(totalPages);
    }


    
public String getTotalRow() {
        
return this.toString(totalRows);
    }


    
public int getPageRecorders() {
        
return pageRecorders;
    }


    
public int getPageEndRow() {
        
return pageEndRow;
    }


    
public int getPageStartRow() {
        
return pageStartRow;
    }


    
public boolean isHasNextPage() {
        
return hasNextPage;
    }


    
public boolean isHasPreviousPage() {
        
return hasPreviousPage;
    }


    
public ArrayList getNextPage() {
        currentPage 
= currentPage + 1;
        
if ((currentPage - 1> 0{
            hasPreviousPage 
= true;
        }
 else {
            hasPreviousPage 
= false;
        }

        
if (currentPage >= totalPages) {
            hasNextPage 
= false;
        }
 else {
            hasNextPage 
= true;
        }

        ArrayList list 
= getList();
        
return list;
    }


    
public ArrayList getPreviousPage() {
        currentPage 
= currentPage - 1;
        
if (currentPage == 0{
            currentPage 
= 1;
        }

        
if (currentPage >= totalPages) {
            hasNextPage 
= false;
        }
 else {
            hasNextPage 
= true;
        }

        
if ((currentPage - 1> 0{
            hasPreviousPage 
= true;
        }
 else {
            hasPreviousPage 
= false;
        }

        ArrayList list 
= getList();
        
return list;
    }


    
public ArrayList getList() {
        
if (currentPage * pageRecorders < totalRows) {
            pageEndRow 
= currentPage * pageRecorders;
            pageStartRow 
= pageEndRow - pageRecorders;
        }
 else {
            pageEndRow 
= totalRows;
            pageStartRow 
= pageRecorders * (totalPages - 1);
        }

        ArrayList list 
= new ArrayList();
        
for (int i = pageStartRow; i < pageEndRow; i++{
            list.add(arrayList.get(i));
        }

        
return list;
    }


    
public String toString(int temp) {
        String str 
= Integer.toString(temp);
        
return str;
    }

}
分页代码来源于   我心依旧 兄的BLOG~
http://www.blogjava.net/action/archive/2005/11/12/19443.html
我修改了构造方法和返回类型,每页显示数可以给构造方法加个参数来修改,使用这个分页是先把所有的记录从数据库读出来,放在一个ArrayList里面,数据量大的时候不行,分页以后把ArrayList里面的数据取出来的时候需要强制类型转换。

posted on 2006-03-11 11:29 山岗 阅读(305) 评论(0)  编辑 收藏 引用

只有注册用户登录后才能发表评论。