spring使用context:property-placeholder载不进属性问题
来源:互联网 发布:使命召唤12cpu优化 编辑:程序博客网 时间:2024/06/05 19:36
环境:spring3.1.1+mybatis3.2.8+mybatis-spring1.2.3
今天整合了SpringMVC + MyBatis,发现了一个问题,在这里做个记录,各位如果遇到相同的问题,可以参考下。
<!-- 引入jdbc配置文件 --> <context:property-placeholder location="classpath:prop/jdbc.properties" />
引入文件时出现下面的错误,提示dataSource中的使用资源文件中key对应的value值没有引入进来。
### Cause: org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC Connection; nested exception is org.apache.commons.dbcp.SQLNestedException: Cannot load JDBC driver class '${jdbc.driver}'] with root causejava.lang.ClassNotFoundException: ${jdbc.driver}
首先确认jdbc.properties引入的路径没有问题。其次往下看。
解决案:
xml 头部将 default-autowire=”byName”去掉。
修改SqlSessionFactory。
将
<!-- 创建SqlSessionFactory,同时指定数据源 --> <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="dataSource" ref="dataSource" /> <!-- 自动扫描entity目录, 省掉Configuration.xml里的手工配置 --> <property name="mapperLocations" value="classpath*:maper/*.map.xml" /></bean> <!-- DAO接口所在包名,Spring会自动查找其下的类 --> <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <property name="basePackage" value="org.com.mars.dao" /></bean>
改成:
<!-- 创建SqlSessionFactory,同时指定数据源 --> <bean id="mySqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="dataSource" ref="dataSource" /> <!-- 自动扫描entity目录, 省掉Configuration.xml里的手工配置 --> <property name="mapperLocations" value="classpath*:maper/*.map.xml" /></bean> <!-- DAO接口所在包名,Spring会自动查找其下的类 --> <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <property name="basePackage" value="org.com.mars.dao" /> <property name="sqlSessionFactoryBeanName" value="mySqlSessionFactory" /></bean>
这样,dataSource中就可以正常使用.properties文件中的key-value了。
附:完整的配置文件,这个文件是用来完成spring和mybatis的整合的xml。
感谢热心的前辈技术分享!本文如有不正,请指出。
参考资料:
http://www.oschina.net/question/188964_32305
0 0
- spring使用context:property-placeholder载不进属性问题
- spring使用context:property-placeholder载不进属性问题
- spring使用context:property-placeholder载不进属性问题
- spring使用context-property-placeholder载不进属性问题
- spring 使用context:property-placeholder载不进属性 属性加载之前就读取属性变量
- spring配置文件中的context:property-placeholder属性
- spring配置文件中的context:property-placeholder属性
- spring的context:property-placeholder属性
- spring的context:property-placeholder属性
- 使用context:property-placeholder载不进属性原因分析与解决方案
- spring3+mybatis 使用MapperScannerConfigurer时context:property-placeholder载不进属性
- spring中<context:property-placeholder>使用
- Spring配置文件<context:property-placeholder>标签使用
- spring中context:property-placeholder/元素 --spring 属性文件
- spring 和mybatis整合时 使用context:property-placeholder载不进属性 还报org.springframework.beans.factory.BeanCrea
- 关于 Spring 中使用 context:property-placeholder 属性占位符设置配置文件
- context:property-placeholder,spring配置文件加载属性信息
- spring context:property-placeholder无法加载配置文件,导致属性无效
- MongoDB3.0版本特性
- Linux下Mysql安装(源码包)
- Oracle中的sysdate
- Linux内核错误码与错误指针
- javascript基础--跨域
- spring使用context:property-placeholder载不进属性问题
- 关于噪波
- Android Freeline加速编译App方案 使用和总结
- Java 单例 双重检查锁的正确姿势
- Application context和Activity context的区别及应用
- SSM框架---Spring注解@Component、@Repository、@Service、@Controller区别
- 2015年33期Java/Spring/Struts2/web/基础/就业班视频
- 西北
- 学习国嵌嵌入式视频笔记