mybatis
文章平均质量分 61
架构路上
热爱技术,望有朝一日能作技术路上的指路人。
展开
-
mybatis源码阅读(五) 之 mapper接口的执行流程
最终调用的是包装后的MapperMethod的execute()。原创 2021-05-26 18:16:32 · 311 阅读 · 0 评论 -
mybatis源码阅读(四) 之 mapper接口到底是什么?
MapperStatement怎么跟Dao接口对应回到之前的部分,在我们注入mapper接口时,我们会调用MapperFactoryBean的getObject()方法,且往下看:@Overridepublic T getObject() throws Exception { return getSqlSession().getMapper(this.mapperInterface);}public SqlSession getSqlSession() { return this.sqlS原创 2021-05-26 18:15:22 · 331 阅读 · 0 评论 -
mybatis源码阅读(二) 之 mapper接口为什么能被@Autowired注入?
mapper接口为什么能被@Autowired注入?紧接上文mybatis源码阅读(一)之mybatis在springboot中的入口上文聊到扫描出mapper接口,并生成BeanDefinition注册到spring容器中。众所周知,spring在初始化bean的时候,要么是反射调用构造方法,要么是使用FactoryBean去getObject()。在我们编写的业务代码中并没有实现mapper接口,所以这里必然是使用后者。下面进入正文:ClassPathMapperScanner#doScan(原创 2021-05-25 17:56:41 · 1990 阅读 · 1 评论 -
mybatis源码阅读(三) 之SqlSessionFactory是如何被初始化的?
SqlSessionFactory是如何被初始化的?原创 2021-05-25 17:53:58 · 396 阅读 · 0 评论 -
mybatis源码阅读(一) 之 springboot入口
文章所使用容器为springboot。1.mybatis入口入口一 MybatisAutoConfiguration:如果上下文中不存在MapperScannerConfigurer.class,则加载MybatisAutoConfiguration.AutoConfiguredMapperScannerRegistrar.class,该类实现了spring的ImportBeanDefinitionRegistrar接口,会在容器初始化阶段调用registerBeanDefinitions方法,注册M原创 2021-05-25 15:30:11 · 705 阅读 · 1 评论