日期:2014-05-16 浏览次数:21120 次
package Util;
import dao.ArchiveDAO;
public class PageUtil {
    private int pageSize;//页面大小(每页显示的条目数)
    private int pageId;//当前页码Id
    private int pageTotal;//记录总数
    private int pageNum;//记录总页数
    
    /**
     * 构造方法,用于计算总页数
     */
    public PageUtil() {
        super();
        this.pageTotal = new ArchiveDAO().getTotals();
    }
    public int getPageSize() {
        return pageSize;
    }
    public void setPageSize(int pageSize) {
        this.pageSize = pageSize;
    }
    public int getPageId() {
        return pageId;
    }
    public void setPageId(int pageId) {
        this.pageId = pageId;
    }
    public int getPageTotal() {
        return pageTotal;
    }
    /**
     * 计算总页数
     * @param pagesize
     * @return
     */
    public int getPageNum(int pageSize) {
        if (pageTotal < pageSize) {
            pageNum = 1;
        } else if (pageTotal % pageSize == 0) {
            pageNum = pageTotal / pageSize;
        } else {
            pageNum = pageTotal / pageSize + 1;
        }
        return pageNum;
    }
}
package dao;
import java.sql.*;
import java.util.ArrayList;
import java.util.List;
import entity.Archive;
import Util.DBUtil;
import Util.PageUtil;
public class ArchiveDAO {
    private static final String FIND_TOTAL = "select * from d_archive";
    private static final String FIND_ALL = "select * from d_archive limit ?,?";
    
    /**
     * 获取记录总数
     * @return
     */
    public int getTotals() {
        int pageTotal = 0;
        try {
            Connection conn = DBUtil.getConnection();
            PreparedStatement prep = conn.prepareStatement(FIND_TOTAL);
            ResultSet res = prep.executeQuery();
            while (res.next()) {
                pageTotal++;
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        return pageTotal;
    }
    
    /**
     * 查询当前页的条目
     * @param page 当前页码
     * @return
     */
    public List<Archive> getPage(PageUtil page) {
        int pageId = page.getPageId();//当前页码
        int pageSize = page.getPageSize();//页面大小
        //int pageNum = page.getPageNum(pageSize);//页码总数
        //int pageTotal = page.getPageTotal();//总条目数
        
        List<Archive> list = new ArrayList<Archive>();
        try {
            Connection conn = DBUtil.getConnection();
            PreparedStatement prep = conn.prepareStatement(FIND_ALL);
            int begin = (pageId - 1) * pageSize;
            prep.setInt(1, begin);//开始索引位置
            prep.setInt(2, pageSize);//索引条目数
            ResultSet res = prep.executeQuery();
            
            while (res.next()) {
                Archive archive = new Archive();
                archive.setId(res.getInt("id"));
                archive.setDocMgrName(res.getString("document_manager_name"));
                archive.setDepartmentName(res.getString("department_name"));
                archive.setCatchNum(res.getInt("catch_number"));
                archive.setArchiveNum(res.getInt("archive_number"));
                archive.setLastOpeTime(res.getString("last_operate_time"));
                list.add(archive);
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        return list;
    }
}
                    
                    
                    
                    
                    
      
        推荐阅读更多>
      
      
          
        
                       - 
                             jquery.uploadify.min.js 修改代码,该怎么解决 
 
                    
                       - 
                             ext中解决Ajax同步的兑现方法 
 
                    
                       - 
                             jquery可以代替ajax完成所有的功能? 
 
                    
                       - 
                             漫话AJAX原理 
 
                    
                       - 
                             DWR的诠释(annotations)使用及反向调用(Reverse Ajax) 
 
                    
                       - 
                             jquery二级联动 多个同ID元素 怎么实现 
 
                    
                       - 
                             ajax交互只好运行一次 
 
                    
                       - 
                             HelloWorld都不会。帮帮忙。解决方法 
 
                    
                       - 
                             jquery tools中的tab组件在用ajax显示内容的情况上,如果只在第一次点击的时候请求数据 
 
                    
                       - 
                             模仿Jquery风格写的一段拖拽,Ajax等代码 
 
                    
                       - 
                             Ajax 缺少对象,该怎么解决 
 
                    
                       - 
                             在后台方法中对页面的服务器控件进行操作,如何在JS中调用 
 
                    
                       - 
                             安装intellij idea 10.5.1要怎样做? 
 
                    
                       - 
                             ajax异步通信 遮罩滚动条,防止并发及误操作 
 
                    
                       - 
                             初始 ajax 
 
                    
                       - 
                             JQuery间断(abort)Ajax请求 
 
                    
                       - 
                             extjs  jsonstore筛选重复数据有关问题,大家入来指点下。 
 
                    
                       - 
                             jquery $getJSON 有关问题 
 
                    
                       - 
                             Codeigniter框架在IE上ajax提交中文乱码有关问题及解决方法 
 
                    
                       - 
                             extjs2.2.1 grid分组后怎么锁列