插件

Interceptor

这是一个 MyBatis 拦截器插件,核心功能是:把 MyBatis 日志中带 ? 占位符的 SQL,还原成参数回填后的完整可执行 SQL,并打印执行耗时。开发调试时非常实用。

实现这个接口之后,实现它的intercept方法,拦截sql,去处理 SQL 执行,记录耗时,打印完整 SQL。

核心注解 @Intercepts,放在类上面,拦截 MyBatis 的 Executor.query() 和 Executor.update() 两个方法,即所有查询和更新操作都会被拦截。

1
2
3
4
@Intercepts({
@Signature(type = Executor.class, method = "query", args = {...}),
@Signature(type = Executor.class, method = "update", args = {...})
})

更多信息可以查看官方文档:https://mybatis.net.cn/configuration.html#plugins