分页

数据库中取出数据在前端界面展示,如果都取出到前端,那么就会非常占据资源,这是我们就需要进行分页前端需要哪些数据我们就取哪些数据,这样就会变得非常快。

第一种方法:limit方法,取数据时使用sql语句中的limit进行数据的限制取出。这时一般需要传入两个参数,一个是开始的索引,一个是步长。(前端传回来的参数一般为当前页码和一页多少数据,因此开始的索引就需要在controller层进行处理,索引=(当前页码-1)*一页数据。)

//dao层接口
public interface UserMapper {
    List<User> getUserByLimit(Map<String,Object> map);
}
    //Mapper.xml中实现接口的sql语句
    <select id="getUserByLimit" parameterType="map" resultMap="UserMap">
        select * from mybatis.user limit #{startIndex},#{pageIndex}
    </select>
//测试类中的测试方法
@Test
    public void testLimit(){
        SqlSession sqlSession = MybatisUtil.getSqlSession();
        UserMapper mapper = sqlSession.getMapper(UserMapper.class);
        HashMap<String, Object> map = new HashMap<>();
        map.put("startIndex",0);
        map.put("pageIndex",1);
        for (User user : mapper.getUserByLimit(map)) {
            System.out.println(user);
        }
        sqlSession.close();
    }

第二种方法:RowBounds分页,这是一种假分页不推荐使用,略。

posted @ 2023-08-14 16:55  数星观月  阅读(39)  评论(0编辑  收藏  举报