Mybatis自定义插件

本文介绍了Mybatis插件的原理和执行流程,通过编写Interceptor实现类并注解声明,实现了对四大对象的拦截。在拦截过程中,当两个插件拦截同一对象的同一方法时,第二个插件会接收到第一个插件包装后的对象。举例说明,查询id为2的内容会显示为id为4,揭示了插件如何改变执行逻辑。
摘要由CSDN通过智能技术生成
Mybatis插件原理和执行流程

对四大对象和插件有了一定了解后,这里我就开始简单实现一个自定义插件,来拦截四大对象,实现拦截器功能。
步骤:

1. 编写Interceptor的实现类
2. 使用@Intercepts注解完成插件签名 说明插件的拦截四大对象之一的哪一个对象的哪一个方法
3. 将写好的插件注册到全局配置文件中

编写Interceptor的实现类(dao层)以及注解声明

注解参数:

type:拦截对象(四大对象之一)
method:拦截对象的方法
args:当前方法的参数列表

编写Interceptor的实现类:

@Intercepts({
    @Signature(type=StatementHandler.class,method="parameterize",args=java.sql.Statement.class)
})
public class MyfirstPlugin implements Interceptor {
   

    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值