美文网首页
整合Mybatis关键点

整合Mybatis关键点

作者: Depro | 来源:发表于2021-11-01 11:32 被阅读0次

    有两种方式

    1. xml方式
    2. 注解方式
    3. xml是把配置写到xml文件里,由 ClassPathXmlApplicationContext来加载;注解是另一个有@Configuration的配置类加载配置。原理都是把MapperScan的basePackage扫描成BeanDefinition,然后放到spring容器BeanDefintionMap中。最后修改BeanDefinition,把class修改为MapperFactoryBean,在最后生成bean的时候是生成 MapperProxy代理。

    注解方法关键点

    1. 两种方式:@MapperScan方式和加一个@bean MapperScannerConfigurer
    2. @MapperScan()方式是通过@Import()一个ImportBeanDefinitionRegistrar,通过registerBeanDefinition()方法,生成一个ClassPathMapperScanner对象,来扫描加载BeanDefintion和生成 MapperFactoryBean,MapperProxy
    3. MapperScannerConfigurer类,继承了BeanDefinitionRegistryPostProcessor extend BeanFactoryPostProcessor; BeanFactoryPostProcessor是专门来维护修改BeanDefinition的。在postProcessBeanDefinitionRegistry()方法里,也是直接通过ClassPathMapperScanner对象生成BeanDefinition,MapperFactoryBean,MapperProxy,和第一种方式一样

    相关文章

      网友评论

          本文标题:整合Mybatis关键点

          本文链接:https://www.haomeiwen.com/subject/yzjzaltx.html