今天做项目是用到了分页,所以来记录以下,以便加深印象。
首先创造几个个类或者接口dao(接口),daoImpl,service(接口),serviceIImpl,action,pageBean(用于存放分页信息)
先写pageBean类里面的东西。
首先得明白分页相关的值主要有:1.当前页(前端传过来)2.每页设置的记录数(自己设置)3.总的记录数(从数据库中查出)
4.总页数(通过总记录数和每页记录数求出,作用是在前端页面显示出共几页)5.还有最重要的一个是每页的具体信息,这里存储与list集合中。
所以这里的pageBean类的属性是
private int allRowCounts; //这是设置总记录数(在Dao中查的)
private int pageSize; //每页记录数
private int curPage; //当前页
private int sumPages; //总页数
public List<DaiYeInfo> pageList; //每页的商品具体信息(这也是在Dao层查找的,在Dao层查到的就不用在在其他地方找)
pageBean的方法是
1.计算当前页(主要就是对前端传过来的页数进行安全性的限制)
//这是计算当前页
public static int curPage(int page,int sumPages) {
if(page==0) {
return 1;
}else if(page>sumPages) {
return sumPages;//当前页不能超过总页数,也不能小于第一页
}
return page; //当前页一定是从1开始的因为你还要计算他的每一页的具体信息
}
//这是计算总页数
public static int sumPages(int allRowCounts,int