浅谈MyBatis分页开发,你知道有哪些实现方式呢?

分页查询:就是将数据库查询的结果在有限的界面上分好多页显示,分页是许多网站的常用功能,也是最基本的功能。

为什么要分页?减少数据的处理量

 下面用例子演示说明实现分页查询的两种方式:

方式一:

使用limit分页,即在SQL语句中使用limit限定词,如:

1.接口:

    //    分页查询
    List<stu> selectstulimit(Map<String, Integer> map);

2.Mapper.xml

    <select id="selectstulimit" parameterType="map" resultType="stu">
        select ID,name from stu limit #{start},#{end } ;
    </select>

3.测试

所用的数据库表:

    @Test
    public void  selectstulimit() {
        SqlSession sqlSession = mybatisUtils.getSqlSession();
        stuDao stuDao = sqlSession.getMapper(com.ys.Dao.stuDao.class);
        Map<String, Integer> map = new HashMap<>();
        map.put("start", 1);
        map.put("end", 2);
        List<stu> stuList = stuDao.selectstulimit(map);
        for (stu stu : stuList) {
            logger.info(stu);
        }
        sqlSession.close();
    }

 测试结果如下:

 

 方式二:

使用RowBounds分页,Mybatis提供可以进行逻辑分类的RowBounds类,通过传递RowBounds对象,来进行数据库的分页操作,任何select语句都可以使用它。如:

1.接口:

//使用RowBounds分页查询
List<stu> selectstulimit2();

 2.Mapper.xml

    <select id="selectstulimit2" resultType="stu">
        select ID,name from stu
    </select>

3.测试

所查询数据库表同上

    @Test
    public void selectstulimit2() {
        SqlSession sqlSession = mybatisUtils.getSqlSession();
        RowBounds rowBounds = new RowBounds(0, 3);
        List<stu> stuList = sqlSession.selectList("com.ys.Dao.stuDao.selectstulimit2",null,rowBounds);
        for (stu stu : stuList) {
            logger.info(stu);
        }
        sqlSession.close();
    }

查询结果如下:


 当然还有其他实现方式,比如使用分页插件:PageHelpr,具体用法点击查看——>传送门

 。。。。。。。


现在0.06,睡觉去了。。。

 

 

 

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员-小李

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值