Mybatis-Pus简单使用——分页插件(7)

本文详细介绍了Mybatis分页插件的工作原理和使用方法,包括插件机制、四大对象拦截、配置方式及示例代码,帮助读者理解并应用分页功能。

一、分页插件:

1) 插件机制 插件机制 :
Mybatis  通过插件 (Interceptor) 可以做到拦截四大对象相关方法的执行 ,根据需求 成相关数据的动态改变。
Executor
StatementHandler
ParameterHandler
ResultSetHandler
2) 插件原理 插件原理
四大对象的每个在创建时,都会执行 四大对象的每个在创建时,都会执行 interceptorChain.pluginAll(),会经过每个插 件对象的plugin()方法,目的是为当前的四大对象创建代理。代理对象就可以拦截到四大对象相关方法的执行,因为要执行四大对象的方法需要经过代理。

分页插件:

com.baomidou.mybatisplus.plugins.PaginationInterceptor

方法一:在mybatis配置文件中配置插件

<configuration>

    <!--分页插件-->
   <plugins>
        <plugin interceptor="com.baomidou.mybatisplus.plugins.PaginationInterceptor"></plugin>
    </plugins>
</configuration>

方法二:在sqlSessionFactoryBean中配置:

<!--插件-->
<property name="plugins">
    <list>
        <!-- 注册分页插件 -->
        <bean class="com.baomidou.mybatisplus.plugins.PaginationInterceptor"></bean>
    </list>
</property>

案例:

public void testPage(){
    Page page=new Page(1,1);
    List<User> users=userMapper.selectPage(page,null);
    System.out.println(users);

    System.out.println("===============获取分页相关的一些信息======================");

    System.out.println("总条数:" +page.getTotal());
    System.out.println("当前页码: "+  page.getCurrent());
    System.out.println("总页码:" + page.getPages());
    System.out.println("每页显示的条数:" + page.getSize());
    System.out.println("是否有上一页: " + page.hasPrevious());
    System.out.println("是否有下一页: " + page.hasNext());

    //将查询的结果封装到page对象中可以直接返回page对象
    page.setRecords(users);
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值