在SqlMapConfig.xml文件中插入pagehelper插件
<!-- 配置分页插件 -->
<plugins>
<plugin interceptor="com.github.pagehelper.PageInterceptor"></plugin>
</plugins>
在pom.xml文件中,(即mybatis核心文件)配置相关信息
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>5.1.2</version>
</dependency>
在接口中添加方法:
package com.hadwinling.dao;
import java.util.List;
import com.hadwinling.entity.Emp;
public interface EmpDao {
// 所有的员工信息,包含部门信息
List<Emp> findAllEmps();
// 根据部门编号 查询员工
List<Emp> findEmpsByDno(int deptno);
// 根据员工编号 查询员工
Emp findEmpByEno(int empno);
//分页查询
List<Emp> findEmpsBypage();
}
在test类中
package com.hadwinling.client;
import java.util.List;
import org.apache.ibatis.session.SqlSession;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.hadwinling.dao.CityDao;
import com.hadwinling.dao.DeptDao;
import com.hadwinling.dao.EmpDao;
import com.hadwinling.dao.ProvinceDao;
import com.hadwinling.entity.Dept;
import com.hadwinling.entity.Emp;
import com.hadwinling.entity.Province;
import com.hadwinling.util.MyBatisUtil;
public class Client {
public static void main(String[] args) {
SqlSession session = MyBatisUtil.getSqlSession();
EmpDao empDao = session.getMapper(EmpDao.class);
// 分页查询
PageHelper.startPage(1, 3);
List<Emp> emps = empDao.findEmpsBypage();
// for (Emp emp : emps) {
// System.out.println(emp);
// }
//将数据封装到pageInfo中 PageInfo<Emp> pageInfo = new PageInfo<Emp>(emps); //获取查询内容
pageInfo.getList().forEach(System.out::println);
System.out.println("上一页:"+pageInfo.getPrePage());
System.out.println("下一页:"+pageInfo.getNextPage());
System.out.println("总记录数:"+pageInfo.getTotal());
System.out.println("一页的行数:"+pageInfo.getPageSize());
System.out.println("是否是第一页"+pageInfo.isIsFirstPage());
System.out.println("是否是最后一页:"+pageInfo.isIsLastPage());
System.out.println("当前页面:"+pageInfo.getPageNum()); //所有页面 int[] pageNums =
pageInfo.getNavigatepageNums(); for (int i : pageNums) {
System.out.println("页面:"+i+"\t"); }
System.out.println("是否有上一页:"+pageInfo.isHasPreviousPage());
System.out.println("是否有下一页:"+pageInfo.isHasNextPage());
}
}