我们都知道mybatis框架,对于数据方面的应用更为出色。就数据的找寻方面,我们有时会涉及到分页搜索的操作,相信这点也是很多人迫切需要学习的知识点。java中mybatis的分页要借助map的原理,在下文中会展开详细的叙述。同时也可以了解LIMIT关键字的分页方法。
1.map集合
我们的分页是需要多个参数的,并不是只有一个参数。当需要接收多个参数的时候,我们使用Map集合来装载。
public List<Student> pagination(int start ,int end) throws Exception { //得到连接对象 SqlSession sqlSession = MybatisUtil.getSqlSession(); try{ //映射文件的命名空间.SQL片段的ID,就可以调用对应的映射文件中的SQL /** * 由于我们的参数超过了两个,而方法中只有一个Object参数收集 * 因此我们使用Map集合来装载我们的参数 */ Map<String, Object> map = new HashMap(); map.put("start", start); map.put("end", end); return sqlSession.selectList("StudentID.pagination", map); }catch(Exception e){ e.printStackTrace(); sqlSession.rollback(); throw e; }finally{ MybatisUtil.closeSqlSession(); } } public static void main(String[] args) throws Exception { StudentDao studentDao = new StudentDao(); List<Student> students = studentDao.pagination(0, 3); for (Student student : students) { System.out.println(student.getId()); } }
2.LIMIT关键字
(1)mapper代码:利用limit关键字实现分页
<select id="selectByPageInfo" resultMap="BaseResult"> select * from tb_user limit #{pageNo}, #{pageSize} </select>
(2)业务层直接调用
public List<User> findByPageInfo(PageInfo info) { return userMapper.selectByPageInfo(info); }
(3)控制层直接调用
以上就是mybatis在java中分页查询的方法,因为参数的不固定,所以我们要借助map进行处理。对于另一种关键字的分页方法,大家也可以做一个知识的了解。更多基础知识指路:头条