Mybatis中@Mapper与@MapperScan配置及注入原理解析

问题背景:

执行流程:
1.发现Bean定义:首先根据@MapperScan中的basePackage或者@Mapper所在的package取得需要扫描的包,之后通过ClassPathMapperScaner获取包下所有Mapper接口类的BeanDefinition;
2.注册Bean:设置beanClass为MapperFactoryBean,再设置MapperFactoryBean的构造参数为实际的Mapper接口类,然后通过ClassPathBeanDefinitionScanner父类进行Bean注册
3.调用Bean:自动注入时,通过调用MapperFactoryBean的getObject获取实例

原理解析:

你可能感兴趣的:(Mybatis中@Mapper与@MapperScan配置及注入原理解析)