Mybatis框架的分页方法

依赖

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

配置文件

<plugins>
    <plugin interceptor="com.github.pagehelper.PageInterceptor">
      <property name="helperDialect" value="mysql"/>
      <property name="reasonable" value="true"/>
 </plugin>
 @Test
    public void findAllTest(){
        try{
            PageHelper.startPage(2,3);
            List<User> userList=mapper.findAll();
            PageInfo<User> userPageInfo=new PageInfo<>(userList);
            System.out.println(userPageInfo);
            System.out.println(userList.getClass());
            userList.forEach(System.out::println);
            MyBatisUtil.loadcommint();
        }catch (Exception e){
            e.printStackTrace();
            MyBatisUtil.Rrollback();
        }finally {
           MyBatisUtil.close();
        }
    }
PageHelper.startPage(2,3);表示为第二页,每页3条数据

根据PageInfo可以获得多个值

            private int pageNum;//当前页码

            private int pageSize;//设置每页多少条数据

            private int size;//当前页有多少条数据

            private int startRow;//当前页码的第一条数据

            private int endRow;//当前页码的最后一条数据

            private int pages;//总共多少页

            private int prePage;//上一页(页面链接使用)

            private int nextPage;//下一页(页面链接使用)

            private boolean isFirstPage;//是否为第一页

            private boolean isLastPage;//是否为最后一页

            private boolean hasPreviousPage;//是否有前一页

            private boolean hasNextPage;//是否有下一页

            private int navigatePages;//导航页码数(就是每次显示多少页)

            private int[] navigatepageNums;//导航页码集(就是每次显示的页号集),可以用来遍历

            private int navigateFirstPage;//导航首页号

            private int navigateLastPage;//导航尾页号

这个为PageInfo的属性值都可以通过get方法获取

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
MyBatis是一种轻量级的Java持久层框架,用于和数据库进行交互。在处理大量数据时,我们通常需要进行分页查询来提高性能和用户体验。MyBatis提供了一个简单而强大的分页插件来封装分页功能。 在MyBatis中,我们可以使用分页插件来实现分页查询。首先,我们需要在配置文件中引入分页插件,并通过插件配置来启用分页功能。可以使用以下配置来启用MyBatis分页插件: ``` <plugins> <plugin interceptor="com.github.pagehelper.PageInterceptor"> <property name="helperDialect" value="mysql"/> </plugin> </plugins> ``` 在Mapper接口对应的映射文件中,我们可以使用`RowBounds`对象来指定分页的偏移量和限制条数。例如,我们可以使用以下方式进行分页查询: ``` List<User> getUsersByPage(SqlSession session, int offset, int limit) { RowBounds rowBounds = new RowBounds(offset, limit); return session.selectList("com.example.mapper.UserMapper.getUsers", null, rowBounds); } ``` 在上述代码中,`offset`表示分页查询的偏移量,`limit`表示每页显示的数据条数。`RowBounds`对象实例化后作为参数传入`selectList`方法,并在映射文件中的SQL语句中使用`#{offset}`和`#{limit}`来引用。 通过使用MyBatis分页插件,我们可以轻松地实现数据的分页查询操作,从而提升系统性能和用户体验。同时,MyBatis分页插件还提供了丰富的配置选项,可以满足不同场景下的分页需求。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值