Mybatis框架如何使用分页插件呢?

分页插件使用的方式

  • 修改 pom 文件,添加分页 jar 包依赖  
  • 修改 mybatis.xml 文件
  • UserDao 接口,UserMapper.xml 添加对应方法与实现 sql
  • 对应 UserService 接口添加分页查询方法
  • 测试分页效果

案例实操

1.修改 pom 文件,添加分页 jar 包依赖


com.github.pagehelper
pagehelper
4.1.0

2.修改 mybatis.xml 文件


   
   
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
              value="pageNum=start;pageSize=limit;pageSizeZero=zero;reasonable=heli;count=cou
       ntsql" />
   

3.UserDao 接口,UserMapper.xml 添加对应方法与实现 sql

UserDao 接口:

public interface UserDao {
public User queryUserById(int id);
public List queryUsers();
}

UserMapper.xml


PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">

   
   

4.对应 UserService 接口添加分页查询方法

public interface UserService {
public User queryUserById();
   /**
   * 分页方法定义
   * @param pageNum 当前页号
   * @param pageSize 设置每页显示数量
   * @return
   */
public PageInfo queryUsers(int pageNum,int pageSize);
}

UserServiceImpl 实现方法:

@Service
public class UserServiceImpl implements UserService{
   @Resource
   private UserDao userDao;
   public User queryUserById(){
    return userDao.queryUserById(7);  
   }
   @Override
   public PageInfo queryUsers(int pageNum, int pageSize) {
       /**
       * PageHelper 类设置分页页号与每页大小
       */
       PageHelper.startPage(pageNum, pageSize);
       List list=userDao.queryUsers();
       PageInfo pageInfo=new PageInfo(list);
       return pageInfo;
   }
}

5.测试分页效果

数据库原始记录

Mybatis框架如何使用分页插件呢?_第1张图片

测试

第一次 PageNum =1 pageSize=1

@Test
public void testQueryUsers() {
   PageInfo pageInfo= userService.queryUsers(1, 1);
       for(User user:pageInfo.getList()){
        System.out.println("user:"+user);
   }  
}

结果:

Mybatis框架如何使用分页插件呢?_第2张图片

第二次 pageNum=2 pageSize=1

@Test
public void testQueryUsers() {
   PageInfo pageInfo= userService.queryUsers(2, 1);
   for(User user:pageInfo.getList()){
    System.out.println("user:"+user);
   }  
}

结果

Mybatis框架如何使用分页插件呢?_第3张图片

备注:分页插件 如果传入的页码 操作记录总页数 此时我们得到的是最后一页的记录

第三次测试 PageNum=3 pageSize=1

@Test
public void testQueryUsers() {
   PageInfo pageInfo= userService.queryUsers(3, 1);
   for(User user:pageInfo.getList()){
    System.out.println("user:"+user);
   }  
}

结果:

Mybatis框架如何使用分页插件呢?_第4张图片

扩展

分页插件压缩版

解压即可使用,和之前配置一样去配置好 config.xml,再运行 run.bat 即可

Mybatis框架如何使用分页插件呢?_第5张图片

你可能感兴趣的