您的位置:首页 > 移动开发

MapperScannerConfigurer处理过程源码分析(转)

2016-07-26 09:04 281 查看
<bean name="scannerConfigurer" class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="sqlSessionFactoryBeanName" value="sqlSessionFactory" />
<property name="basePackage" value="com.lutai.admin.*.dao"/>
</bean>

MapperScannerConfigurer实现了BeanDefinitionRegistryPostProcessor接口,spring初始化的时候postProcessBeanDefinitionRegistry方法将会被调用。
public void postProcessBeanDefinitionRegistry(BeanDefinitionRegistry registry) {
if(this.processPropertyPlaceHolders) {
this.processPropertyPlaceHolders();
}

ClassPathMapperScanner scanner = new ClassPathMapperScanner(registry);
scanner.setAddToConfig(this.addToConfig);
scanner.setAnnotationClass(this.annotationClass);
scanner.setMarkerInterface(this.markerInterface);
scanner.setSqlSessionFactory(this.sqlSessionFactory);
scanner.setSqlSessionTemplate(this.sqlSessionTemplate);
scanner.setSqlSessionFactoryBeanName(this.sqlSessionFactoryBeanName);
scanner.setSqlSessionTemplateBeanName(this.sqlSessionTemplateBeanName);
scanner.setResourceLoader(this.applicationContext);
scanner.setBeanNameGenerator(this.nameGenerator);
scanner.registerFilters();
scanner.scan(StringUtils.tokenizeToStringArray(this.basePackage, ",; \t\n"));
}






http://www.mybatis.org/spring/zh/mappers.html http://fangjian0423.github.io/2014/09/06/MapperScannerConfigurer-analysis/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: