zoukankan      html  css  js  c++  java
  • 分页技术

    分页技术的核心其实就是查找数据库中指定序号的数据:

    下面的代码是之前用hibernate获取后台数据的分页:可以参考一下:这只是后台代码:

    package com.ssh.entities;
    
    import java.util.List;
    
    public class PageBean {
    
    	private List<User> list;//从数据库分页查出来的集合
    	private int allRows;//总记录数
    	private int totalPage;//总页数
    	private int currentPage;//当前页
    	public List<User> getList() {
    		return list;
    	}
    	public void setList(List<User> list) {
    		this.list = list;
    	}
    	public int getAllRows() {
    		return allRows;
    	}
    	public void setAllRows(int allRows) {
    		this.allRows = allRows;
    	}
    	public int getTotalPage() {
    		return totalPage;
    	}
    	public void setTotalPage(int totalPage) {
    		this.totalPage = totalPage;
    	}
    	public int getCurrentPage() {
    		return currentPage;
    	}
    	public void setCurrentPage(int currentPage) {
    		this.currentPage = currentPage;
    	}
    	/**
    	 * @author zhangshitong
    	 * get the total pages
    	 * @param pageSize
    	 * @param allRows
    	 * @return
    	 */
    	public int getTotalPages(int pageSize,int allRows){
    		int totalPage=(allRows % pageSize==0)?(allRows / pageSize):(allRows /pageSize)+1;
    		return totalPage;
    	}
    	
    	/**
    	 * get the offset获得当前开始记录号
    	 */
    	
    	public int getCurrentPageOffset(int pageSize, int currentPage){
    		
    		int offset=pageSize*(currentPage-1);
    		
    		return offset;
    		
    	}
    	/**
    	 * 得到当前页,如果为0就从第一页开始,否则为当前页
    	 * @param page
    	 * @return
    	 */
    	public int getCurrentPage(int page){
    		int currentPage=(page==0)? 1:page;
    		return  currentPage;
    	}
    	
    	
    }
    

      

    /**
    	 * @author zhangshitong
    	 * 分页功能实现的两个方法
    	 * @return
    	 */
    	public int getAllRowCount(){
    		int allRows=0;
    		String hql="From User u";
    		Query query=getSession().createQuery(hql);
    		allRows=query.list().size();
    		return allRows;
    	}
    	
    	public List<User> queryByPage(String hql, int offset, int pageSize){
    		List<User> list=null;
    		Query query=getSession().createQuery(hql).setFirstResult(offset).setMaxResults(pageSize);
    		list=query.list();
    		return list;
    	}
    	
    	
    

      

  • 相关阅读:
    在Linux下卸载Oracle 11g
    Android UI学习 Menu
    Android中设置EditText获得焦点时不弹出软键盘
    Android ADB 命令
    Oracle下载地址
    Android开发快捷键
    Android中将字符串文字内容复制到系统剪贴板
    MySQL数据库常用备份方法和注意事项
    详解Android首选项框架ListPreference
    sql连接查询方法
  • 原文地址:https://www.cnblogs.com/zhangshitong/p/5708143.html
Copyright © 2011-2022 走看看