在SSM框架,而非maven项目中,使用分页插件PageHelper的时候,需要依赖两个jar包:
- PageHelper.jar
- Jsqlparser.jar
在maven项目中只需要PageHelper.jar
一、在配置文件中加入PageHelper插件
在applicationContext-dao.xml配置文件中添加插件标签,当程序启动时,加载xml文件,会对PageInterceptor对象进行创建
<plugins>
<plugin interceptor="com.github.pagehelper.PageInterceptor">
</plugin>
</plugins>
二、直接使用PageHelper分页查询
@Test
public void getStuPage(){
//设置页码,用户点击的页码
int page = 2;
//设置每页多少数据,程序设定
int size = 3;
//设置分页信息
PageHelper.startPage(page, size);
//查询数据
List<Student> students = studentMapper.getAll();
System.out.println(students);
//查看分页信息数据
PageInfo<Student> pageInfo = new PageInfo<>(students);
System.out.println("当前页数据:"+ pageInfo);
System.out.println("查询出的list数据:"+pageInfo.getList());
System.out.println("当前页码:"+pageInfo.getPageNum());
System.out.println("总页数:"+pageInfo.getPages());
System.out.println("所有数据条数:"+pageInfo.getTotal());
}
查询结果:
- 根据查询结果看出,底层仍是在sql语句上使用limit,但不需要我们去写
三、注意事项
-
不需要在sql语句中使用limit进行分页查询,只需在查询语句之前使用PageHelper()即可。
-
查询数据的动作要在分页动作之后进行,否则不会分页查询。