这篇文章将为大家详细讲解有关MyBatis Plus执行流程与插件机制原理的深入浅析,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
MyBatis Plus插件
MyBatis Plus提供了分页插件PaginationInterceptor、执行分析插件SqlExplainInterceptor、性能分析插件PerformanceInterceptor以及乐观锁插件OptimisticLockerInterceptor。
Mybatis 通过插件 (Interceptor) 可以做到拦截四大对象相关方法的执行 ,根据需求完成相关数据的动态改变。
四大对象是:
四大对象的每个对象在创建时,都会执行interceptorChain.pluginAll(),会经过每个插件对象的 plugin()方法,目的是为当前的四大对象创建代理。代理对象就可以拦截到四大对象相关方法的执行,因为要执行四大对象的方法需要经过代理 。
① xml下插件的配置
如下所示:
<bean id="sqlSessionFactoryBean" class="com.baomidou.mybatisplus.spring.MybatisSqlSessionFactoryBean"> <!-- 数据源 --> <property name="dataSource" ref="dataSource"> </property> <property name="configLocation" value="classpath:mybatis-config.xml"> </property> <!-- 别名处理 --><property name="typeAliasesPackage" value="com.jane.mp.beans"> </property> <!-- 注入全局MP策略配置 --><property name="globalConfig" ref="globalConfiguration"> </property> <!-- 插件注册 --><property name="plugins"><list><!-- 注册分页插件 --> <bean class="com.baomidou.mybatisplus.plugins.PaginationInterceptor"> </bean> <!-- 注册执行分析插件 --><bean class="com.baomidou.mybatisplus.plugins.SqlExplainInterceptor"> <property name="stopProceed" value="true"></property></bean> <!-- 注册性能分析插件 --> <bean class="com.baomidou.mybatisplus.plugins.PerformanceInterceptor"><property name="format" value="true"> </property> <!-- <property name="maxTime" value="5"></property> --></bean> <!-- 注册乐观锁插件 --> <bean class="com.baomidou.mybatisplus.plugins.OptimisticLockerInterceptor"></bean> </list></property></bean>
文章名称:MyBatisPlus执行流程与插件机制原理的深入浅析-创新互联
本文路径:https://www.cdcxhl.com/article22/cecsjc.html
成都网站建设公司_创新互联,为您提供网站设计公司、商城网站、电子商务、品牌网站制作、标签优化、手机网站建设
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联