0%

Mybatis RowBounds分页

Mybatis可以通过传递RowBounds对象,来进行数据库数据的分页操作,然而遗憾的是,该分页操作是对ResultSet结果集进行分页,也就是人们常说的逻辑分页,而非物理分页。

Mybatis的RowBounds分页是对结果集进行的分页。

所以适用于数据量比较小的情况下,效率比较高。

示例

  1. 接口
1
List<User> getUserByRowBounds();
  1. mapper.xml
1
2
3
<select id="getUserByRowBounds" resultMap="UserMap">
select * from mybatis.user
</select>
  1. 测试
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
@Test
public void getUserByRowBounds(){
SqlSession sqlSession = MybatisUtils.getSqlSession();
//RowBounds实现
RowBounds rowBounds = new RowBounds(1,2);

//通过java代码层面实现分页
List<User> userList = sqlSession.selectList("com.jialidun.dao.UserDap.getUserByRowBounds",null,rowBounds);

for(User user:userList){
System.out.println(user);
}

sqlSession.close();

}