第一步:导入分页插件的依赖
com.github.pagehelper pagehelper 5.1.10
第二步:注册sqlsessionfactory添加分页插件
package com.example.config;
import com.github.pagehelper.PageInterceptor;
import org.apache.ibatis.session.SqlSessionFactory;
import org.mybatis.spring.SqlSessionFactoryBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import javax.sql.DataSource;
@Configuration
public class MybatisConfig {
@Bean
public SqlSessionFactory getSqlSessionFactory(DataSource ds) throws Exception {
SqlSessionFactoryBean factory = new SqlSessionFactoryBean();
//设置数据源
factory.setDataSource(ds);
//把分页插件设置到SqlSessionFactory插件库
factory.setPlugins(new PageInterceptor());
//返回具体实例对象SqlSessionFactory
// SqlSessionFactoryBean,Bean在后的特殊Bean需要调用getObject()返回Bean
SqlSessionFactory object = factory.getObject();
return object;
}
}
第三步:使用分页
//分页使用
@GetMapping("/test1")
public Map test1() {
//启用分页查询,查询第一页每页5条
PageHelper.startPage(1, 5);
List orderMasters = orderMaterMapper.queryOrderMaster();
Page page = (Page) orderMasters;
int pages = page.getPages();//总页数
long total = page.getTotal();//总的条数
int pageSize = page.getPageSize();//每页条数
int pageNum = page.getPageNum();//当前页码
//封装成map为了以后向前端传参
Map map = new HashMap<>();
map.put("pages", pages);
map.put("total", total);
map.put("total", orderMasters);
return map;
}



