其他分享
首页 > 其他分享> > mybatis学习3之分页的实现

mybatis学习3之分页的实现

作者:互联网

前言

分页可以通过数据库层面或者Java层面甚至插件都可以实现

一、分页是什么?

分页可以这样理解,我们想让每页显示多少数据就显示多少数据。

二、作用

加快数据检索速率,减少数据的使用量

三、如何实现

通过数据库层面

<select id="getUserByLimit" resultMap="userMap" parameterType="map">
        select * from mybatis.user limit #{startIndex},#{pageSize}
</select>
@Test
    public void getUserByLimit(){
        SqlSession sqlSession = MybatisUtils.getSqlSession();
        UserMapper mapper = sqlSession.getMapper(UserMapper.class);
        HashMap<String, Integer> map = new HashMap<>();
        map.put("startIndex",0);
        map.put("pageSize",4);
        List<User> userList = mapper.getUserByLimit(map);
        for (User user : userList) {
            System.out.println(user);
        }
        sqlSession.close();
    }

通过Java层面

<select id="getUserByLimit2" resultMap="userMap" >
        select * from mybatis.user
</select>

通过RowBounds实现

@Test
    public void getUserByLimit2(){
        SqlSession sqlSession = MybatisUtils.getSqlSession();
        //通过RowBounds实现
        RowBounds rowBounds = new RowBounds(0,4);
        //java层面的分页实现
        List<User> userList = sqlSession.selectList("com.shan.dao.UserMapper",null, rowBounds);
        for (User user : userList) {
            System.out.println(user);
        }
        sqlSession.close();
    }

通过插件实现(了解)

可以使用分页插件PageHelper去实现,了解一下即可!

总结

只要get到一个点就够了,分页的实质就是limit!

标签:map,分页,学习,userList,sqlSession,user,mybatis,RowBounds
来源: https://blog.csdn.net/ZXS1002/article/details/121567944