美文网首页
Mybatis的Handler

Mybatis的Handler

作者: kacen | 来源:发表于2022-06-16 16:43 被阅读0次

本篇是针对mybatis的handler相关的源码解析。
我们需要先了解一下StatementHandler(它是一个接口),它是被BaseStatementHandler实现,PreparedStatementHandler再继承BaseStatementHandler。
有兴趣的可以idea 双击shift搜索一下相关类的具体内容。
然后看一下相关的实现类:
关系图如下:


截屏2022-06-14 下午10.41.06.png
截屏2022-06-14 下午11.45.19.png

上面的我们需要注意的是CallableStatementHandler,PreparedStatementHandler,SimpleStatementHandler,
我们从PreparedStatementHandler开始看。
这个时候很多人可能会想,为什么要了解PreparedStatementHandler。
因为它主要做一个Statement的以预处理的处理器,可以提高效率。它和jdbc的Preaprement是相互交互的。也是mybatis比较重要的一个类。

截屏2022-06-15 上午9.31.44.png
CallableStatementHandler的话主要是通过CallableStatement来执行sql,它主要是一个存储执行过程。
SimpleStatementHandler底层就是我们jdbc中的用的Statement来完成数据库的相关操作,所以它是没有使用占位符相关的流程的。但是该方法存在sql注入问题,所以正常都是使用PrepareStatement(它实际也继承了Statement)。

相关文章

网友评论

      本文标题:Mybatis的Handler

      本文链接:https://www.haomeiwen.com/subject/wuxxvrtx.html