返回顶部
扩大
缩小

Yeap

Mybatis-02分页的支持

limit实现分页

#语法
  select * from table limit startIndex,pageSize
  
  select * from table limit 5,2; //从第6个数据开始 显示2条数据

	select * from table limit 5; //检索前5条数据
实现步骤:

​ mapper.xml中的文件

<select id="selectUser" parameterType="map" resultType="user">
select * from user limit #{startIndex},#{pageSize}
</select>

​ mapper接口,参数使用Map

List<User> selectUser(Map<String,Integer> map);

​ 编写测试类:

@Test
    public void getUserByLimit(){
    SqlSession session = MybatisUtils.getSession();
    UserMapper mapper = session.getMapper(UserMapper.class);
    HashMap<String, Object> map = new HashMap<>();
    map.put("startIndex",0);
    map.put("pageSize",2);

    List<User> userByLimit = mapper.getUserByLimit(map);
    for (User user : userByLimit) {
        System.out.println(user);
    }
    session.close();
}

RowBounds分页

RowBounds分页是实现要在Java代码层面实现

​ mapper.xml

<select id="getUserByRowBounds" parameterType="map" resultType="user">
      select  * from mybatis.user
 </select>

​ mapper接口

//查询所有的用户信息
List<User> getUserByRowBounds(Map<String,Object> map);

​ 编写测试类:

@Test
public void getUserByRowBounds(){
    SqlSession session = MybatisUtils.getSession();
    RowBounds rowBounds = new RowBounds(1, 2);
    // 通过Java代码层面实现分类
    List<Object> objects = session.selectList("com.yp.dao.UserMapper.getUserByRowBounds",null,rowBounds);
    for (Object object : objects) {

        System.out.println(object);
    }
}

还有一种分页的方式:

image-20210106185202605

posted on 2021-01-06 18:54  YP泡泡  阅读(53)  评论(0)    收藏  举报

导航