1.引入分页插件
在pom.xml下添加如下依赖
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>最新版本</version>
</dependency>
2.配置拦截器插件
com.github.pagehelper.PageHelper
现在是一个特殊的 dialect
实现类,是分页插件的默认实现类。在spring-mybatis.xml中添加如下
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<property name="mapperLocations" value="classpath:com/java/generator/mapper/*.xml"></property>
<!-- 配置分页插件 -->
<property name="plugins">
<array>
<bean class="com.github.pagehelper.PageHelper">
<property name="properties">
<value>
dialect=mysql
reasonable=true
</value>
</property>
</bean>
</array>
</property>
</bean>
3.代码实现
@RequestMapping("/query")
@ResponseBody
public JSONObject queryEmp() {
JSONObject backJson = new JSONObject();
EmpExample empExample = new EmpExample();
empExample.createCriteria();
//pageNum:页数 pageSize:条目数 默认查询总数count
Integer pageNum = 2;
Integer pageSize = 2;
try {
PageHelper.startPage(pageNum, pageSize);
List<Emp> empList = empMapper.selectByExample(empExample);
PageHelper.orderBy("empNo desc");
PageInfo<Emp> empPage = new PageInfo<Emp>(empList);
List<Emp> list = empPage.getList();
backJson.put("DATA", list);
backJson.put("STATUS", "0");
backJson.put("MSG", "SUCCESS");
log.info("backJson :" + backJson);
} catch (Exception e) {
// TODO: handle exception
backJson.put("STATUS", "-1");
backJson.put("MSG", "Exception");
log.info("queryEmp Exception :" + e);
return backJson;
}
return backJson;
}
具体详细的参数介绍和使用的各种场景见 PageHelper详解