Java中的分页实现
来源:互联网 发布:淘宝千里眼破解版 编辑:程序博客网 时间:2024/06/07 04:55
1,创建分页的实体类: 然后获得其属性的get和set方法 需要注意的是getTotalPage()方法需要修改下,计算出总页数
public class UtilPage {
publicint totalPage;// 总页数
publicint rowsCount;// 总条数
publicint currentPage;// 当前页数
public final int pageSize= 3;// 页面显示条数
publicint getTotalPage() {
if(rowsCount% pageSize == 0) {
totalPage= (rowsCount/ pageSize);
}else {
totalPage= (rowsCount/ pageSize + 1);
}
returntotalPage;
}
2,在Dao层中创建两个接口,然后再实现: 获取需要分页的数据(这个没啥难的)
publicList<Customer> getCustomer(intcurrentPage,int pageSize) {
List<Customer>list = newArrayList<>(0);
ct= JDUtil.getConnection();
Stringsql = "select * from t_customer c INNER JOIN t_dict d on c.custLevel=d.didlimit ?,?";
try{
ps= ct.prepareStatement(sql);
ps.setInt(1, (currentPage-1)*pageSize);
ps.setInt(2,pageSize);
rs= ps.executeQuery();
while(rs.next()) {
代码
}
}catch (Exception e) {
e.printStackTrace();
}finally{
JDUtil.closeAll(ct,ps,rs);
}
returnlist;
}
//获取查询数据的总条数
publicint selectRowsCount() {
introwsCount=0;
ct= JDUtil.getConnection();
Stringsql = "select count(*) from t_customer";
try{
ps=ct.prepareStatement(sql);
rs=ps.executeQuery();
while(rs.next()){
rowsCount=rs.getInt(1);
}
}catch (Exception e) {
e.printStackTrace();
}finally{
JDUtil.closeAll(ct,ps,rs);
}
returnrowsCount;
}
}
3,在service层中建立接口并实现:(我这是建立一个Map集合,一起存储需要分页的数据和数据总条数,也可以单独实现)
publicMap<String, Object> getLimitCustomer(intcurrentPage,int pageSize) {
Map<String,Object>map=newHashMap<>();
List<Customer>list = cd.getCustomer(currentPage,pageSize);
introwsCount = cd.selectRowsCount();
map.put("list",list);
map.put("rowsCount",rowsCount);
returnmap;
}
4,在control层中进行具体的Servlet处理
UtilPageutilPage = newUtilPage();(这个是分页实体类对象)
//获取当前页面
intcurrentPage = Integer.parseInt(request.getParameter("currentPage"));
Map<String, Object>limitCustomer = cs.getLimitCustomer(currentPage,utilPage.getPageSize());(利用对象调用service层的方法)
//获取客户集合
List<Customer>list =(List<Customer>)limitCustomer.get("list");
introwsCount =(int)limitCustomer.get("rowsCount");
//将当前页面和总数据条数赋给对象
utilPage.setRowsCount(rowsCount);
utilPage.setCurrentPage(currentPage);
request.setAttribute("utilPage",utilPage);
request.setAttribute("list",list);
//请求转发
try{
request.getRequestDispatcher("WEB-INF/customer/limitPage.jsp").forward(request,response);
}catch (Exception e) {
//TODOAuto-generated catch block
e.printStackTrace();
}
5, 下边就是请求转发到所需要的jsp页面中的分页栏
共[<fontcolor="red"><B>${utilPage.rowsCount}</B></font>]条记录,共[<fontcolor="red"><B>${utilPage.totalPage}</B></font>]页,当前第[<fontcolor="red"> <B>${utilPage.currentPage}</B></font>]页
<c:iftest="${utilPage.currentPage!=1}">
[<B><ahref="Customer?C=getLimitCustomer¤tPage=1">首页</a></B>]
[<B><ahref="Customer?C=getLimitCustomer¤tPage=${utilPage.currentPage-1}">前一页</a></B>]
</c:if>
<c:iftest="${utilPage.currentPage!=utilPage.totalPage}">
[<B><ahref="Customer?C=getLimitCustomer¤tPage=${utilPage.currentPage+1}">后一页</a></B>]
[<B><ahref="Customer?C=getLimitCustomer¤tPage=${utilPage.currentPage=utilPage.totalPage}">尾页</a></B>]
</c:if>
这是主要的实现思想和代码,只要有web基础的都能看明白啥意思,不是完整的程序!!!
阅读全文
0 0
- Java中的分页实现
- Java实现页面显示中的信息分页
- Java Web中的分页显示——通过界面实现
- java中的分页处理
- java中的分页
- Java中的分页技术
- java中的分页代码
- Java中的分页查询
- 如何实现分页(Java)
- java怎么实现分页
- Java标签分页实现
- Java实现分页查询
- java分页实现代码
- java分页实现
- java web 分页实现
- java web 分页实现
- java实现分页
- Java如何实现分页
- IDEA 窗口各模块的介绍
- 组合数的和
- OAuth2的介绍
- [code]依赖关系
- Ubuntu 静态库
- Java中的分页实现
- CAD编辑指南5:输出高清图片和新建空白图纸
- 相似度计算方式的总结:java或python实现代码
- 杭电 4734F(x)(数位dp)
- HDU-2546 饭卡【线性dp】
- mysql5.7.19解压版安装问题
- 摆方格 (数学规律)
- 【Python】【Caffe】五、参数、特征图可视化《python调用caffe模块》
- echarts学习—1(笔记)