1、在pom文件里面加入pageHelper分页jar包依赖:
<dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> <version>4.2.1</version> </dependency> 2、在mybatis配置文件中加入pageHelper分页插件://配置分页插件,详情请查阅官方文档 PageHelper pageHelper = new PageHelper(); Properties properties = new Properties(); properties.setProperty("pageSizeZero", "true");//分页尺寸为0时查询所有纪录不再执行分页 properties.setProperty("reasonable", "true");//页码<=0 查询第一页,页码>=总页数查询最后一页 properties.setProperty("supportMethodsArguments", "true");//支持通过 Mapper 接口参数来传递分页参数 pageHelper.setProperties(properties); //添加插件 sqlSessionFactoryBean.setPlugins(new Interceptor[]{pageHelper});
3、业务层代码:
//pageHelper组件进行分页 Page<CloudProductBO> page = PageHelper.offsetPage(pageNo, pageSize); cloudProductDao.queryProductByCondition(param); List<CloudProductBO> result = page.getResult(); PageInfo pageInfo = new PageInfo(result); return pageInfo;pageHelper类下面的SQL语句进行自动分页,page.getResult()的结果就是分页查询的结果,pageInfo是分页组件,直接返还给前台,里面有分页插件,下面就是pageInfo类。
public class PageInfo<T> implements Serializable { private static final long serialVersionUID = 1L; private int pageNum; private int pageSize; private int size; private String orderBy; private int startRow; private int endRow; private long total; private int pages; private List<T> list; private int prePage; private int nextPage; private boolean isFirstPage;