一、使用Limit实现分页
#语法
SELECT * FROM table LIMIT stratIndex,pageSize
SELECT * FROM table LIMIT 5,10; // 检索记录行 6-15
SELECT * FROM table LIMIT 5; // 相当于【0,5】
1、接口
List<User> getUser(Map<String,Object> map);
2、mapper
<select id="getUser" parameterType="map" resultType="User" resultMap="UserMap" >
select * from user limit #{startIndex},#{pageSize}
</select>
3、测试
@Test
public void test(){
SqlSession sqlSession = MybatisUtils.getSqlSession();
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
HashMap<String, Object> map = new HashMap<>();
map.put("startIndex",0);
map.put("pageSize",3);
List<User> userList = mapper.getUser(map);
for (User user : userList) {
System.out.println(user);
}
sqlSession.close();
}
二、RowBounds分页
1、接口
List<User> getUserByrowbounds();
2、mapper
<select id="getUser" resultMap="UserMap" >
select * from user
</select>
3、实现
@Test
public void test(){
SqlSession sqlSession = MybatisUtils.getSqlSession();
List<User> userList = sqlSession.selectList("com.jia.mapper.UserMapper.getUserByRowBounds",null,new RowBounds(0,3));
for (User user : userList) {
System.out.println(user);
}
sqlSession.close();
}
三、分页插件
MyBatis 分页插件 PageHelper