本文简单介绍mybatis(基于3.4.2版本)的几个核心组件,为下面的源码解析打下基础
本章要点
- SqlSource及其作用
- SqlNode及其作用
- Executor及其作用
- StatementHandler及其作用
- ParameterHandler及其作用
- DataSourceFactory及其作用
1、SqlSource及其作用
SqlSource主要有StaticSqlSource、RawSqlSource、RawSqlSource、ProviderSqlSource,如下图:
image.png
其作用是封装sql并接受参数
2、SqlNode及其作用
SqlNode有很多种子类:IfSqlNode、StaticTextSqlNode等,如下图:
image.png
每一个子类对应于mybatis的xml的一个标签,用来封装各种标签的sql片段。
3、Executor
sql执行器主要左右是执行sql,具体子类如下图:
image.png
4、 StatementHandler及其作用
5、ParameterHandler及其作用
主要是对参数的处理
6、DataSourceFactory及其作用
7、NodeHandler
不同的NodeHandler处理不同的标签
image.png
网友评论