spring3.0.6 使用context:property-placeholder载不进属性-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

spring3.0.6 使用context:property-placeholder载不进属性

2016-03-18 10:38:41 1729 1

我用spring3.0.6+mybatis3.0.6+mybatis-spring1.0.2做了一个demo,我把数据库连接驱动放在src下,但是我在spring配置文件中加上 ,dataSource配置如下:

<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close">
<!--         <property name="driverClass" value="oracle.jdbc.driver.OracleDriver"/> -->
<!--         <property name="jdbcUrl" value="jdbc:oracle:thin:@10.1.1.3:1521:orcl"/> -->
<!--         <property name="user" value="hyq"/> -->
<!--         <property name="password" value="oracle"/> -->
         
        <property name="driverClass" value="${jdbc.driverClass}"/>
        <property name="jdbcUrl" value="${jdbc.jdbcUrl}"/>
        <property name="user" value="${jdbc.user}"/>
        <property name="password" value="${jdbc.password}"/>
 
    </bean>
抛出异常如下:

2011-11-19 20:37:57 WARN [com.mchange.v2.c3p0.DriverManagerDataSource:107] - Could not load driverClass ${jdbc.driverClass}
java.lang.ClassNotFoundException: ${jdbc.driverClass}
而把上面那段注释的打开,相当于写死在配置文件中就正常。从上面异常我只能看出没加载

属性文件成功,属性文件如下:

## jdbc config
jdbc.driverClass=oracle.jdbc.driver.OracleDriver
jdbc.jdbcUrl=jdbc:oracle:thin:@10.1.1.3:1521:orcl
jdbc.user=hyq
jdbc.password=oracle
jdbc.initialPoolSize=5
jdbc.minPoolSize=5
jdbc.maxPoolSize=30
jdbc.acquireIncrement=5
jdbc.maxIdleTime=10
jdbc.maxStatements=0

我是maven搭的,全放在/src/main/resources下,哪位帮我找找原因,谢谢!

取消 提交回答
全部回答(1)
  • a123456678
    2019-07-17 19:06:06

    在spring里使用org.mybatis.spring.mapper.MapperScannerConfigurer 进行自动扫描的时候,设置了sqlSessionFactory 的话,可能会导致PropertyPlaceholderConfigurer失效,也就是用${jdbc.username}这样之类的表达式,将无法获取到properties文件里的内容。 导致这一原因是因为,MapperScannerConigurer实际是在解析加载bean定义阶段的,这个时候要是设置sqlSessionFactory的话,会导致提前初始化一些类,这个时候,PropertyPlaceholderConfigurer还没来得及替换定义中的变量,导致把表达式当作字符串复制了。 但如果不设置sqlSessionFactory 属性的话,就必须要保证sessionFactory在spring中名称一定要是sqlSessionFactory ,否则就无法自动注入。又或者直接定义 MapperFactoryBean ,再或者放弃自动代理接口方式。

    0 0
相关问答

18

回答

【大咖问答】对话PostgreSQL 中国社区发起人之一,阿里云数据库高级专家 德哥

阿里ACE 彭飞 2019-07-10 09:36:10 1044468浏览量 回答数 18

162

回答

惊喜翻倍:免费ECS+免费环境配置~!(ECS免费体验6个月活动3月31日结束)

豆妹 2014-10-29 17:52:21 226206浏览量 回答数 162

145

回答

【新手入门】云服务器linux使用手册

fanyue88888 2012-11-26 17:14:18 157741浏览量 回答数 145

8

回答

OceanBase 使用动画(持续更新)

mq4096 2019-02-20 17:16:36 337074浏览量 回答数 8

111

回答

OSS存储服务-客户端工具

newegg11 2012-05-17 15:37:18 295629浏览量 回答数 111

22

回答

爬虫数据管理【问答合集】

我是管理员 2018-08-10 16:37:41 147264浏览量 回答数 22

18

回答

阿里云开放端口权限

xcxx 2016-07-20 15:03:33 646849浏览量 回答数 18

38

回答

安全组详解,新手必看教程

我的中国 2017-11-30 15:23:46 259886浏览量 回答数 38

249

回答

阿里云LNAMP(Linux + Nginx + Apache + MySQL + PHP)环境一键安装脚本

云代维 2014-02-14 15:26:06 305681浏览量 回答数 249

2

回答

区域选择帮助

fanyue88888 2012-12-07 15:54:30 204413浏览量 回答数 2
+关注
0
文章
14879
问答
问答排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载