mybatis插件pageHelper实现分页效果

网友投稿 355 2023-01-16


mybatis插件pageHelper实现分页效果

最近做的一个项目在持久层我们采用的是Mybatis今天完成了商品列表的分页查询的功能,这篇博客我分享一下如何采用pageHelper的插件实现分页。mybatis的应用,最大的好处就在于我们可以更加方便灵活的编写我们的sql语句,实现对单表或者多表的增删改查,在这基础上我们使用pageHelper插件实现分页更加方便了我们对项目的开发,提高了开发效率,我们以实现商品列表的查询为背景,详细介绍一下如何应用这个插件简单的实现分页功能。

1、jar包引入

我们项目中在依赖管理方面采用的是Maven,所以想要引入分页的jar包,我们需要配置三坐标:

com.github.pagehelper

pagehelper

${pagehelper.version}

2、配置mybatis的拦截器:

3、编写service层

页面采用的是easyUI的框架,页面接收数据采用的是json格式,所以在数据传输过程中,我们把最终的结果封装在一个实体里面,就需要在增加一个分页实体类:EUDataGridResult

package com.taotao.common.pojo;

import java.util.List;

public class EUDataGridResult {

//结果总数

private long total;

//结果行数

private List> http://rows;

public long getTotal() {

return total;

}

public void setTotal(long total) {

this.total = total;

}

public List> getRows() {

return rows;

}

public vhttp://oid setRows(List> rows) HIEhjY{

this.rows = rows;

}

}

编写业务层代码,增加分页处理,设置返回对象:

/**

* 分页查询商品列表信息

*/

@Override

public EUDataGridResult getItemByList(int page, int rows) {

//查询商品列表

TbItemExample example=new TbItemExample();

//分页处理

PageHelper.startPage(page, rows);

List list=itemMapper.selectByExample(example);

//创建一个返回值对象

EUDataGridResult result=new EUDataGridResult();

//设置返回结果

result.setRows(list);

//设置返回的总记录数

PageInfo pageInfo=new PageInfo<>(list);

result.setTotal(pageInfo.getTotal());

return result;

}

4、编写前端控制层controller代码:

Controller中主要功能是接收页面传过来的参数,并且返回json类型的数据结果:

/**

* 分页查询商品信息列表

* @param page

* @param rows

* @return

*/

@RequestMapping("/item/list")

@ResponseBody

public EUDataGridResult getItemList(Integer page,Integer rows){

EUDataGridResult result=itemService.getItemByList(page, rows);

return result;

}

5、jsp的页面:

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>

data-options="singleSelect:false,collapsible:true,pagination:true,url:'/item/list',method:'get',pageSize:30,toolbar:toolbar">

商品ID

商品标题

叶子类目

卖点

价格

库存数量

条形码

状态

创建日期

更新日期

6、最后的实现结果


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:研发管理平台公司名称是什么(研发类公司的名称)
下一篇:Java求质数的几种常用算法分析
相关文章

 发表评论

暂时没有评论,来抢沙发吧~