7、分页
学习视频地址:分页实现
分页的作用:减少数据的处理量
7.1、使用Limit分页
sql语句:
select * from mybatis.user limit 0,3
用Mybatis实现分页,核心SQL
-
接口
//分页 List<User> getUserLimit(Map<String,Integer> map);
-
Mapper.xml
<select id="getUserLimit" parameterType="map" resultMap="userMap"> select * from mybatis.user limit #{startIndex},#{pageSize} </select>
-
测试
@Test public void test3(){ SqlSession sqlSession= MybatisUtils.getSqlSession(); logger.debug("进入分页测试"); UserMapper userDao = sqlSession.getMapper(UserMapper.class); HashMap<String, Integer> map = new HashMap<String, Integer>(); map.put("startIndex",0); map.put("pageSize",3); List<User> userList = userDao.getUserLimit(map); for (User user : userList) { System.out.println(user); } //关闭sqlSession sqlSession.close(); }
7.2、RowBounds分页
用java程序实现分页
1、接口
//RowBounds分页
List<User> getUserRowBounds();
2、Mapper.xml
<select id="getUserRowBounds" resultMap="userMap">
select * from mybatis.user
</select>
3、测试
@Test
public void test4(){
SqlSession sqlSession= MybatisUtils.getSqlSession();
logger.debug("进入分页2测试");
RowBounds rowBounds = new RowBounds(1, 2);
List<User> userList = sqlSession.selectList("com.shui.dao.UserMapper.getUserRowBounds", null, rowBounds);
for (User user : userList) {
System.out.println(user);
}
//关闭sqlSession
sqlSession.close();
}
7.3、分页插件
https://pagehelper.github.io/