Mybatis源码正确打开方式

饮水思源——官方文档,先看文档再看源码

下载源码,安装到本地,保证能编译运行;

从宏观到微观,从整体到细节;

找到入口,抓主放次,梳理核心流程;

源码调试,找到核心数据结构和关键类;

勤练习,多折腾;

 

MyBatis 源码下载地址:https://github.com/mybatis/mybatis-3 整体架构

Mybatis源码正确打开方式

 

 

mabatis源码思维导图

                                                                                                                                                                      

Mybatis源码正确打开方式

Mybatis源码正确打开方式

 

  

                                                                                       

Mybatis源码正确打开方式

 

mybatis三大核心流程:

Mybatis源码正确打开方式

 

 mybatis初始化:

Mybatis源码正确打开方式

Mybatis源码正确打开方式

 

 

Mybatis源码正确打开方式

Mybatis源码正确打开方式

 

 

 

 进入光标选中的propertiesElement方法内发现,mybatis初始化的时候会把配置文件内的信息放入configuration对象对应的属性内:

 

 

Mybatis源码正确打开方式

 

 

 

Mybatis源码正确打开方式

 

 

Mybatis源码正确打开方式

Mybatis源码正确打开方式

Mybatis源码正确打开方式

Mybatis源码正确打开方式

Mybatis源码正确打开方式

 

   至此mybatis初始化工作完成,配置文件的所有信息都被加载到了sqlSessionFactory中的configration对象内。

 

 

Mybatis源码正确打开方式

 

 

 

 

mybatis代理阶段:

 

Mybatis源码正确打开方式

 

Mybatis源码正确打开方式

根据sql的类型update,insert,select,delete 缩小查找范围,然后根据sql的返回类型map?list?就可唯一确定一个sqlsession执行方法

mybatis mapper接口并没有实现类,运行中如何判调用的具体方法,执行指定的sql语句???

 

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wpzxjd.html