1、查询分页
- 1、使用limit SQL语句
接口中创建一个方法:(参数用map)
List<User> selectUserLimit(Map<String,Integer> map);//分页查询
xmi文件中实现接口中的方法
<select id="selectUserLimit" resultMap="userMap1" parameterType="map">
select * from user limit #{startIndex},#{pagenum}
</select>
<resultMap id="userMap1" type="com.liu.pojo.User">
<id column="pwd" property="password"></id>
</resultMap>
- 2、RowBounds
List<User> selectUserRowBounds();//分页查询
<select id="selectUserRowBounds" resultType="user">
select * from user
</select>
@Test
public void selectUserRowBounds(){
SqlSession sqlSession = MybatisUtils.getSqlSession();
RowBounds rowBounds = new RowBounds(0,3);
List<User> userList = sqlSession.selectList("com.liu.mapper.UserMapper.selectUserRowBounds", null, rowBounds);
for (User user : userList) {
System.out.println(user);
}
sqlSession.close();
}
- 3、使用第三方插件
2、使用注解开发
- 不用再在xml文件中去实现接口,直接在接口中用注解实现sql语句
@Select("select *from user")
List<User> selectUser();//查询数据
- 绑定接口
<mappers>
<mapper class="com.liu.mapper.UserMapper"/>
</mappers>
- 3、测试
@Test
public void selectUser() {
SqlSession sqlSession = MybatisUtils.getSqlSession();
//mybatis工具类的getSqlSession方法
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
List<User> users = mapper.selectUser();
for (User user: users){
System.out.println(user);
}
sqlSession.close();
}
注解可以简化代码,但是复杂语句建议还是在xml中实现