09_SpringBoot集成PageHelper插件

@Author Jacky Wang , 转载请注明出处 https://www.jianshu.com/p/3e5ae2cad6ca

一. 步骤

  1. 引入pagehelper的Maven依赖
  2. 编写Mybatis配置类,引入PageHelper
  3. 在需要分页操作的地方引入PageHelper插件

二. 实现

2.1 引入pagehelper的Maven依赖
        
            com.github.pagehelper
            pagehelper
            4.1.0
        
2.2 编写Mybatis配置类引入PageHelper插件
import java.util.Properties;

import org.springframework.boot.SpringBootConfiguration;
import org.springframework.context.annotation.Bean;

import com.github.pagehelper.PageHelper;

@SpringBootConfiguration
public class MybatisConfig {

    @Bean
    public PageHelper pageHelper() {
        PageHelper pageHelper = new PageHelper();
        Properties properties = new Properties();
        properties.setProperty("offsetAsPageNum", "true");
        properties.setProperty("rowBoundsWithCount", "true");
        properties.setProperty("reasonable", "true");
        properties.setProperty("dialect", "mysql"); // 配置mysql数据库的方言
        pageHelper.setProperties(properties);
        return pageHelper;
    }
}
2.3 使用PageHelper
使用pagehelper分页查询步骤: 
    1. 在sql查询前使用 PageHelper.startPage(page,pageSize,sort);//参数1:当前页,参数2:每页展示记录数,参数3:排序
    2. sql语句执行获得结果
    3. 将查询结果放入PageInfo中,分页相关数据就都在PageInfo对象中了
        eg: pageInfo.getPageSize(),pageInfo.getTotal(),pageInfo.getPageNum(),pageInfo.getPages(),pageInfo.getList()等等

    // 分页查询支持
    PageHelper.startPage(deviceDTO.getCurrentPage(), deviceDTO.getPageSize(), "lastOnlineDate desc");
    paramMap.put(ForeverConst.Params.PARAM_STATUS, status);
    List totalDeviceList = baseDeviceService.selectListByMap(paramMap);
    PageInfo pageInfo = new PageInfo<>(totalDeviceList);
    DreamResponse respData = DreamResponse.createOKResponse("查询客户拥有的设备列表成功");
    respData.setData(pageInfo.getList());

至此,SpringBoot集成PageHelper插件就已经完成了。

你可能感兴趣的:(09_SpringBoot集成PageHelper插件)