使用分页查询插件来实现模糊查询

最近在写一个分布式的项目,虚心学习,一起进步。
我们知道分页查询数据然后展示是一个很常见的功能,这里我们不考虑使用前端框架提供的分页插件,我们使用一个叫pagehelper的工具

第一步:使用Maven项目导入依赖(其他依赖比如Mybatis的依赖等也要导入):

<!--分页-->
<dependency>
    <groupId>com.github.pagehelper</groupId>
    <artifactId>pagehelper</artifactId>
    <version>${pagehelper.version}</version>
</dependency>

第二步:创建一个查询工具类来存储分页后的结果(注意这里需要实现Serializable序列化接口):

//这里的get和set方法和其他的有参构造无参构造就省略了,还是自己补全的好
public class PageResult implements Serializable {
    private List list;//当前页数据集
    private Long total;//总记录
 }

第三步:创建方法实现模糊查询:

public PageResult search(int pageNum, int pageSize,TbBrand condition) {
    //1、设置分页参数,pageNum:当前查询第几页  pageSize:每页显示多少条
    PageHelper.startPage(pageNum,pageSize);

    //拼接查询条件
    TbBrandExample example = new TbBrandExample();
    TbBrandExample.Criteria criteria = example.createCriteria();
    criteria.andNameLike("%"+condition.getName()+"%");
    // SELECT * FROM `tb_brand` b WHERE  b.`name` LIKE '%测试%'

    //2、调用dao方法实现查询,返回结果强制转换成Page对象
    Page page = (Page) brandMapper.selectByExample(example);

    List list = page.getResult();//当前页数据集
    long total = page.getTotal();//据库中该表中的总记录数

    // 3、封装返回结果
    PageResult pageResult = new PageResult(list, total);

    return pageResult;
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值