SpringBoot集成MyBatis的分页插件PageHelper(回头草)

SpringBoot集成MyBatis的分页插件PageHelper(回头草)

       俗话说:好?不吃回头草,但是在这里我建议不管你是好马还是不好马,都来吃吃,带你复习一下分页插件PageHelper。       

       昨天给各位总结了本人学习springboot整合mybatis第一阶段的一些学习心得和源码,主要就算是敲了一下SpringBoot的门儿,希望能给各位的入门带给一点儿捷径,今天给各位温习一下MyBatis的分页插件PageHelper和SpringBoot的集成,它的使用也非常简单,开发更为高效。因为PageHelper插件是属于MyBatis框架的,所以相信很多哥们儿都已经用烂了,下面带着各位吃一下回头草。

       首先说说MyBatis框架的PageHelper插件吧,它是一个非常好用的分页插件,通常我们的项目中如果集成了MyBatis的话,几乎都会用到它,因为分页的业务逻辑说复杂也不复杂,但是有插件我们何乐而不为?通常引入它们只需三步骤,不管是Spring集成还是SpringBoot集成都是老套路,我就分开总结了,望各位笑纳。

Spring集成PageHelper:

第一步:pom文件引入依赖

1 2 3 com.github.pagehelper4 pagehelper5

第二步:MyBatis的核心配置文件中引入配置项

1 2 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23

第三步:业务逻辑实现分页功能,我们只需将当前查询的页数page和每页显示的总条数rows传进去,然后Pagehelper已经帮我们分好数据了,只需在web层获取数据即可。

1 //分页查询商品列表: 2 @Override 3 public DatagridResult itemList(Integer page, Integer rows) { 4 //为了程序的严谨性,判断非空: 5 if(page == null){ 6 page = 1; //设置默认当前页 7 } 8 if(page = this.totalPage?0:1;37 }38 39 public Integer getCurrentPage() {40 return currentPage;41 }42 43 public void setCurrentPage(Integer currentPage) {44 this.currentPage = currentPage;45 }46 47 public Integer getPageSize() {48 return pageSize;49 }50 51 public void setPageSize(Integer pageSize) {52 this.pageSize = pageSize;53 }54 55 public Integer getTotalNum() {56 return totalNum;57 }58 59 public void setTotalNum(Integer totalNum) {60 this.totalNum = totalNum;61 }62 63 public Integer getIsMore() {64 return isMore;65 }66 67 public void setIsMore(Integer isMore) {68 this.isMore = isMore;69 }70 71 public Integer getTotalPage() {72 return totalPage;73 }74 75 public void setTotalPage(Integer totalPage) {76 this.totalPage = totalPage;77 }78 79 public Integer getStartIndex() {80 return startIndex;81 }82 83 public void setStartIndex(Integer startIndex) {84 this.startIndex = startIndex;85 }86 87 public List getItems() {88 return items;89 }90 91 public void setItems(List items) {92 this.items = items;93 }94 }

分页功能源码(web层和service层)。

1 @Override 2 public List findItemByPage(int currentPage,int pageSize) { 3 //设置分页信息,分别是当前页数和每页显示的总记录数【记住:必须在mapper接口中的方法执行之前设置该分页信息】 4 PageHelper.startPage(currentPage, pageSize); 5 6 List allItems = itemMapper.findAll(); //全部商品 7 int countNums = itemMapper.countItem(); //总记录数 8 PageBean pageData = new PageBean(currentPage, pageSize, countNums); 9 pageData.setItems(allItems);10 return pageData.getItems();11 } 1 /** 2 * 商品分页功能(集成mybatis的分页插件pageHelper实现) 3 * 4 * @param currentPage :当前页数 5 * @param pageSize :每页显示的总记录数 6 * @return 7 */ 8 @RequestMapping(“/itemsPage”) 9 @ResponseBody10 public List itemsPage(int currentPage,int pageSize){11 return itemService.findItemByPage(currentPage, pageSize);12 }

到这儿呢,MyBatis的分页插件PageHelper就完全和SpringBoot集成到一起了,确实没有什么新鲜的,标题有个”回头草”就是这个意思,重点和各位复习一下MyBatis的分页插件的运用,好久没用了正好一块总结一下哈。


比丘资源网 » SpringBoot集成MyBatis的分页插件PageHelper(回头草)

发表回复

提供最优质的资源集合

立即查看 了解详情