一. 步骤
引入pagehelper的Maven依赖
编写Mybatis配置类,引入PageHelper
在需要分页操作的地方引入PageHelper插件
二. 实现
2.1 引入pagehelper的Maven依赖
<dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> <version>4.1.0</version> </dependency>
2.2 编写Mybatis配置类引入PageHelper插件
import java.util.Properties;import org.springframework.boot.SpringBootConfiguration;import org.springframework.context.annotation.Bean;import com.github.pagehelper.PageHelper;@SpringBootConfigurationpublic 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<Device> totalDeviceList = baseDeviceService.selectListByMap(paramMap); PageInfo<Device> pageInfo = new PageInfo<>(totalDeviceList); DreamResponse<Device> respData = DreamResponse.createOKResponse("查询客户拥有的设备列表成功"); respData.setData(pageInfo.getList());
作者:明天你好向前奔跑
链接:https://www.jianshu.com/p/3e5ae2cad6ca