码迷,mamicode.com
首页 > 移动开发 > 详细

spring property-placeholder MapperScannerConfigurer无法读取配置的解决

时间:2014-09-25 22:46:17      阅读:258      评论:0      收藏:0      [点我收藏+]

标签:io   使用   文件   sp   on   c   r   bs   sql   

在spring里使用org.mybatis.spring.mapper.MapperScannerConfigurer 进行自动扫描的时候,设置了sqlSessionFactory 的话,可能会导致PropertyPlaceholderConfigurer失效,也就是用${jdbc.username}这样之类的表达式,将无法获取到properties文件里的内容。 导致这一原因是因为,MapperScannerConigurer实际是在解析加载bean定义阶段的,这个时候要是设置sqlSessionFactory的话,会导致提前初始化一些类,这个时候,PropertyPlaceholderConfigurer还没来得及替换定义中的变量,导致把表达式当作字符串复制了。 

所以在配置

<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean" name="sqlSessionFactoryName">

时设置唯一的名称

在配置MapperScannerConfigurer时用,

<property name="sqlSessionFactoryBeanName" value="sqlSessionFactoryName"/>

来完成注入

spring property-placeholder MapperScannerConfigurer无法读取配置的解决

标签:io   使用   文件   sp   on   c   r   bs   sql   

原文地址:http://www.cnblogs.com/byshome/p/3993596.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!