* SQL中的分页查询
select * from t_user limit StartIndex PageSize
- SELECT * FROM T_USERINFO LIMIT 0, 7 从下标为0的数据开始,查7条数据。
- SELECT * FROM T_USERINFO LIMIT 7 如果只给定了一个参数,那么第一个参数默认为0 。也是从0开始查7条数据的意思。
* Mybatis实现分页 方式一: 将分页所需要的两个参数[StartIndex,PageSize] 通过map集合的方式传给SQL映射文件
/**
* 测试分页查询
*/
@Test
public void testGetUserByLimit(){
SqlSession sqlSession=MybatisUtil.getCurrentSqlSession();
UserMapper userMapper=sqlSession.getMapper(UserMapper.class);
Map<String,Integer> userMap=new HashMap<String, Integer>();
userMap.put("StartIndex",0);
userMap.put("PageSize",5);
List<User> userList=userMapper.getUserByLimit(userMap);
for (User user:userList) {
System.out.println(user);
}
sqlSession.commit();
MybatisUtil.rollback(sqlSession);
MybatisUtil.close(sqlSession);
}
}
* Mybatis实现分页 方式二:通过RowBounds类实现分页
/**
* 分页查询方式二 RowBounds
*/
@Test
public void testGetUserByRowBounds(){
SqlSession sqlSession=MybatisUtil.getCurrentSqlSession();
//通过RowBounds实现分页
//创建RowBounds对象
RowBounds rowBounds=new RowBounds(0,5);
// 把RowBounds对象传给查询语句
List<User> userList=sqlSession.selectList("getUserByRowBounds","null",rowBounds);
//输出
for (User user:userList) {
System.out.println(user);
}
sqlSession.commit();
MybatisUtil.rollback(sqlSession);
MybatisUtil.close(sqlSession);
}
}
* Mybatis实现分页方式三 :Mybatis分页插件
- 网址 : https://pagehelper.github.io/
原文:https://www.cnblogs.com/szqengr/p/14725958.html