提示1:本文需在掌握动态代理基础后浏览,如果动态代理需要回顾可以看我的另一篇博客
提示2:本文以我之前写的工程为模板进行讲解,工程结构及代码可以看我的另一篇博客
1. 说在前头
2. sqlSessionFactoryBuilder的build()过程:解析mybatis配置文件得到拥有Configuration属性的DefaultSqlSessionFactory对象。先梳理一下大体流程,然后再进行源码分析
2.1 mybatis配置文件读取后作为IO输入流会作为参数调用SqlSessionFactoryBuild类的build方法;
2.2 mybatis配置文件输入流会被转为XMLConfigBuild对象的XPathParser类型parser属性,便于解析;
2.3 XMLConfigBuilder的parseConfiguration方法解析parser属性,也就是解析mybatis配置文件的各个标签,如environments、mappe