MyBatis中使用PageHelper

发布时间:2024年01月24日

一、分页原理

mysql的limit后面两个数字:

  • 第一个数字:startIndex(起始下标。下标从0开始。)
  • 第二个数字:pageSize(每页显示的记录条数)

【例】:

select * from t_car limit 2,3;

?表示从第二条数据开始查,返回从第二个开始的共3条信息

select * from t_car limit 3;

表示返回前三个数据,相当于 limit? 0,3;

二、PageHelper插件使用步骤

1.【引入依赖-pom.xml】

<dependency>
  <groupId>com.github.pagehelper</groupId>
  <artifactId>pagehelper</artifactId>
  <version>5.3.1</version>
</dependency>

?2.【在mybatis-config.xml核心配置文件中添加拦截器】

<plugins>
  <plugin interceptor="com.github.pagehelper.PageInterceptor"></plugin>
</plugins>

3.【CarMapper.xml】

<select id="selectAll" resultType="Car">
  select * from t_car
</select>

4.【编写测试程序】

@Test
public void testPageHelper() throws Exception{
    SqlSession sqlSession = SqlSessionUtil.openSession();

    CarMapper mapper = sqlSession.getMapper(CarMapper.class);

    // 开启分页
    //一定要注意在执行DQL语句之前开启分页功能
    int pageNum=2;
    int pageSize=3;
    PageHelper.startPage(pageNum, pageSize);

    // 执行查询语句
    List<Car> cars = mapper.selectAll();

    // 封装分页信息对象
    //PageInfo对象是pageHelper插件提供的,用来封装分页相关的信息对象
    PageInfo<Car> pageInfo = new PageInfo<>(cars, 10);

    System.out.println(pageInfo);

    sqlSession.close();
}

? ?一定要注意在执行DQL语句之前开启分页功能

文章来源:https://blog.csdn.net/m0_63849044/article/details/135757448
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。