【Mybatis源码解析】mapper实例化及执行流程源码分析

基础环境:JDK17、SpringBoot3.0、mysql5.7

储备知识:《【Spring6源码・AOP】AOP源码解析》《JDBC详细全解》

简介

基于SpringBoot的Mybatis源码解析:

1.如何对mapper实例化bean

在加载BeanDefinition时,会将SqlSessionFactory、SqlSessionTemplate、MapperScannerConfigurer加载到注册表中,以供后续进行实例化。

而且在此期间,mapper接口已经实例化完成了,后续从缓存中取出即可。

初始化时,

第一步,使用SqlSessionFactoryBean来生成SqlSessionFactory。生成过程中,使用了MapperAnnotationBuilder解析mapper接口上的注解,放到Configuration中,然后放到SqlSessionFactory里,把创建的SqlSessionFactory实例放到bean缓存池中。

第二步,使用使用SqlS

猜你喜欢

转载自blog.csdn.net/CSDN_SAVIOR/article/details/129039435