mybatis之引入分页插件

一:PageHelper的maven坐标

<!--分页工具类-->

<dependency>

<groupId>com.github.pagehelper</groupId>

<artifactId>pagehelper</artifactId>

</dependency>

<dependency>

<groupId>com.github.jsqlparser</groupId>

<artifactId>jsqlparser</artifactId>

</dependency>

二:在mybatis配置文件中增加插件配置

<plugins>

<!-- 配置分页助手的插件 -->

<plugin interceptor="com.github.pagehelper.PageHelper">

<!-- 指定数据库方言 -->

<property name="dialect" value="mysql"/>

<!-- 设置为true时,查询结果中会查询出总条数信息 -->

<property name="rowBoundsWithCount" value="true"/>

</plugin>

</plugins>

三:分页查询

分页查询需要当前页和每页大小两个参数,通过PageHelper.setPage方法将参数设置进去,jsqlparser会在sql执行前拦截sql进行分页拼接,如果指定方言是mysql则是limit xx,xx,所以mybatis在自定义sql语句中的末尾尽量不要增加分号;否则拼接的sql语句会有错误。

下面附上一个分页方法案例:

/**
 * 分页查询品牌
 * @param pageNum:当前页数
 * @param pageSize:每页大小
 * @return:分页结果集
 */
@Override
public PageResult findPage(int pageNum, int pageSize,TbBrand tbBrand) {
    PageHelper.startPage(pageNum,pageSize);
    TbBrandExample example = new TbBrandExample();
    if(tbBrand != null){
        TbBrandExample.Criteria criteria = example.createCriteria();
        if(StringUtils.isNotEmpty(tbBrand.getName())){
            criteria.andNameLike("%"+tbBrand.getName()+"%");
        }
        if(StringUtils.isNotEmpty(tbBrand.getFirstChar())){
            criteria.andFirstCharLike("%"+tbBrand.getFirstChar()+"%");
        }
    }
    Page<TbBrand> page = (Page<TbBrand>) brandMapper.selectByExample(example);
    return new PageResult(page.getTotal(),page.getResult());
}

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值