java ssm 分页_SSM实现简单后台分页
1.簡單思路
這是最常見的分頁格式,分析一下我們需要傳什么數據給前端吧! 首先是左邊下面的總共幾條記錄,然后是右邊的當前頁面,然后就是一些你所需要展示的數據。對了每頁顯示多少條是不也得控制下,下面的顯示頁碼數,這里顯示了五條(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 }?總結
以上是生活随笔為你收集整理的java ssm 分页_SSM实现简单后台分页的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: flink实时同步mysql_基于Can
- 下一篇: mybatis获取mysql源数据类型_