基于JAVA的购物网站如何实现分页?
两种实现
1, 所有数据全部存到session里。。每次点击数字时从session取。。假设数字时N。。
则取(N-1)*5 ~ N*5
2 在后台的SQL语句中作处理。。select * from xxx limit 0,5。。这是第一页取出5条数据。。以此类推。。select * from xxx limit 5,5是第二页取出5条。。。select * from xxx limit 10,5第三页取5条
希望能帮助你。
介绍分页的文章有很多,这里只列出其中之一,你可以用java 分页作为关键字在搜索引擎里搜搜,有很多源代码提供的
package ew;
public class PageUtil {
private int pageSize;//每页显示的条数
private int recordCount;//总共的条数
private int currentPage;//当前页面
public PageUtil(int pageSize, int recordCount, int currentPage) {
geSize = pageSize;
cordCount = recordCount;
setCurrentPage(currentPage);
}
//构造方法
public PageUtil(int pageSize, int recordCount) {
this(pageSize, recordCount, 1);
}
//总页数
public int getPageCount() {
int size = recordCount/pageSize;//总条数/每页显示的条数=总页数
int mod = recordCount % pageSize;//最后一页的条数
if(mod != 0)
size++;
return recordCount == 0 ? 1 : size;
}
//包含,起始索引为0
public int getFromIndex() {
// intln("from index:"+(currentPage-1) * pageSize);
return (currentPage-1) * pageSize;
}
//不包含
public int getToIndex() {
// intln("to index:"+Math。
min(recordCount, currentPage * pageSize));
return Math。
min(recordCount, currentPage * pageSize);
}
//得到当前页
public int getCurrentPage() {
return currentPage;
}//设置当前页
public void setCurrentPage(int currentPage) {
int validPage = currentPage getPageCount() ? getPageCount() : validPage;
rrentPage = validPage;
}//得到每页显示的条数
public int getPageSize() {
return pageSize;
}//设置每页显示的条数
public void setPageSize(int pageSize) {
geSize = pageSize;
}//得到总共的条数
public int getRecordCount() {
return recordCount;
}//设置总共的条数
public void setRecordCount(int recordCount) {
cordCount = recordCount;
}
}
--------------------------------------------
下面的代码是放在jsp里面的
--------------------------------------------
-----------下面这个是放在有变量的上面---------------------------------
中间是删除修改之类的代码
------------这个是结尾的--------------------------
记录总数条 当前页/总页数
/每页显示条
首页
">上页
">下页
">末页
-----------------------------------------------。
1.使用session来存储当前页数,翻下页或者点链接多少页时再去session中读出刚刚保存的当前页数,取出来后按逻辑做+-*/运算后传页数参数进去,才能确保分页正确
2.在实体类对象中加入一个属性即插入时间的属性。你可以命名为create_time,然后写个比较器按create_time的规则来比较实体对象就OK了!
你按照我的思路去做不行把我拉去十字架上砍了!
你把map放在session中,那么取出来的应该是可以强制转换为map的,转换为map后再按map里的方法(map里有取出多少行的方法吧,如果没有方法的话你可以取出键值,将键值放到list里以后,再从list里取)。