java ssm 分页_SSM实现简单后台分页

1.简单思路

e7a08c125249261d84e305d0b66b160d.png

这是最常见的分页格式,分析一下我们需要传什么数据给前端吧! 首先是左边下面的总共几条记录,然后是右边的当前页面,然后就是一些你所需要展示的数据。对了每页显示多少条是不也得控制下,下面的显示页码数,这里显示了五条(1,2,3,4,5),你也可以选择只显示三条(1,2,3)。

2.构造传给页面的POJO

packagecom.Dy.Pojo;importjava.util.List;/*** 分页信息

*

*@author小丁同学

**/

public class PageInfo{//你页面需要展示的集合

private Listlist;//显示的总记录数

privateInteger totalNum;//总页数

privateInteger totalPage;//当前页

privateInteger currentPage;//每页显示的数目 (为了防止硬编码可以写在配置文件中)

privateInteger pageSize;//下面两个就是显示的页码 比如start为1 pageNo为5,那么显示的页码数就是1,2,3,4,5

privateInteger start;privateInteger pageNo;publicPageInfo(Integer totalNum, Integer currentPage, Integer pageSize, Integer pageNo) {this.totalNum =totalNum;this.currentPage =currentPage;this.pageSize =pageSize;/*this.pageNo = pageNo;*/

//计算总页数

if (totalNum % this.pageSize == 0)this.totalPage = totalNum / this.pageSize;else

this.totalPage = (totalNum / this.pageSize) + 1;this.start =currentPage;//比如设置了5条,如果总页数都只有四条,那么肯定都是全是显示哦

if (pageNo+currentPage-1>=this.totalPage)this.pageNo =pageNo;else this.pageNo = this.totalPage-currentPage+1;

}public ListgetList() {returnlist;

}public void setList(Listlist) {this.list =list;

}publicInteger getTotalNum() {returntotalNum;

}public voidsetTotalNum(Integer totalNum) {this.totalNum =totalNum;

}publicInteger getTotalPage() {returntotalPage;

}public voidsetTotalPage(Integer totalPage) {this.totalPage =totalPage;

}publicInteger getCurrentPage() {returncurrentPage;

}public voidsetCurrentPage(Integer currentPage) {this.currentPage =currentPage;

}publicInteger getPageSize() {returnpageSize;

}public voidsetPageSize(Integer pageSize) {this.pageSize =pageSize;

}publicInteger getStart() {returnstart;

}public voidsetStart(Integer start) {this.start =start;

}publicInteger getPageNo() {returnpageNo;

}public voidsetPageNo(Integer pageNo) {this.pageNo =pageNo;

}

}

packagecom.Dy.Pojo;public classUser {privateInteger id;privateString username;privateString password;publicInteger getId() {returnid;

}public voidsetId(Integer id) {this.id =id;

}publicString getUsername() {returnusername;

}public voidsetUsername(String username) {this.username =username;

}publicString getPassword() {returnpassword;

}public voidsetPassword(String password) {this.password =password;

}

}

3.构造Dao(可以使用逆向工程,这里为了展示就手打接口和xml了)

packagecom.Dy.Mapper;importjava.util.List;importcom.Dy.Pojo.User;public interfaceUserMapper {public ListfindAllUsers();

}

/p>

PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"

"http://mybatis.org/dtd/mybatis-3-mapper.dtd">

select * from user

4.构造Service

packagecom.Dy.Service;importcom.Dy.Pojo.PageInfo;importcom.Dy.Pojo.User;public interfaceUserService {public PageInfofindAllUsersByPage(Integer currentPage,Integer pageSize);

}

packagecom.Dy.Service;importjava.util.List;importorg.springframework.beans.factory.annotation.Autowired;importorg.springframework.stereotype.Service;importcom.Dy.Mapper.UserMapper;importcom.Dy.Pojo.PageInfo;importcom.Dy.Pojo.User;

@Servicepublic class UserServiceImpl implementsUserService {

@AutowiredprivateUserMapper usermapper;

@Overridepublic PageInfofindAllUsersByPage(Integer currentPage, Integer pageSize) {

List users =usermapper.findAllUsers();

PageInfo pageInfo = new PageInfo<>(users.size(), currentPage, pageSize, 5);//判断是否是最后一页,如果最后一页就显示最后一页的几条,不是最后一页就显示pageSize条

if(currentPage==pageInfo.getTotalPage())

pageInfo.setList(users.subList((currentPage-1)*pageSize, users.size()));elsepageInfo.setList(users.subList((currentPage-1)*pageSize, (currentPage-1)*pageSize+pageSize));returnpageInfo;

}

}

5.JSP部分

«${i }»
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值