基础环境:JDK17、SpringBoot3.0、mysql5.7
储备知识:《【Spring6源码・AOP】AOP源码解析》、《JDBC详细全解》
简介
基于SpringBoot的Mybatis源码解析:
1.如何对mapper实例化bean
在加载BeanDefinition时,会将SqlSessionFactory、SqlSessionTemplate、MapperScannerConfigurer加载到注册表中,以供后续进行实例化。
而且在此期间,mapper接口已经实例化完成了,后续从缓存中取出即可。
初始化时,
第一步,使用SqlSessionFactoryBean来生成SqlSessionFactory。生成过程中,使用了MapperAnnotationBuilder解析mapper接口上的注解,放到Configuration中,然后放到SqlSessionFac