spring 配置文件中读取不到properties文件

javaera 2013-09-26 05:46:38
在spring 配置文件读数据库参数的properties文件 但是读不到
1.spring的配置文件
<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="locations">
<list>
<value>classpath*:jdbc.properties</value>
</property>
</bean>

<!-- ***************本地MySql配置数据源************** -->
<bean id="mySqlDataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="username"><value>${jdbc.user}</value></property>
<property name="password"><value>${jdbc.password}</value></property>
<property name="driverClassName"><value>com.mysql.jdbc.Driver</value></property>
<property name="url"><value>${jdbc.url}</value></property>
</bean>
2.jdbc.properties
jdbc.url=jdbc:mysql://localhost:3306/cp?useUnicode=true&charaterEncoding=utf-8
jdbc.user=root
jdbc.password=123456
jdbc.driverClass=com.mysql.jdbc.Driver

3.cp\WebRoot\WEB-INF\classes下有jdbc.properties文件
4.报错:
org.springframework.transaction.CannotCreateTransactionException: Could not open JDBC Connection for transaction; nested exception is java.sql.SQLException: No suitable driver found for ${jdbc.url}
5.结论把
${jdbc.url}当成字符串了 并未读到properties里的数据
...全文
23663 19 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
serphyno 2016-06-02
  • 打赏
  • 举报
回复
http://blog.163.com/wf_shunqiziran/blog/static/176307209201282755010505/ 参看这里
qq_35186973 2016-06-01
  • 打赏
  • 举报
回复
楼主问题解决了吗?我的是占位符被当做字符串 ,不知道怎么回事
哈哈323223 2016-03-25
  • 打赏
  • 举报
回复
这个问题我刚刚碰到解决了,我项目一直是好一阵坏一阵,从svn上拉下来有时候能加载上有时候加载不上,<context:property-placeholder file-encoding="UTF-8" location="classpath:*.properties"/> 用这个把,关键不要写名字写*.properties,我发现spring中很多写名字的都无法加载。
番茄鲨鱼面 2015-10-10
  • 打赏
  • 举报
回复
猜测你的property文件没有加载。 <context:property-placeholder location="classpath:jdbc.properties" />
狂爵 2015-10-09
  • 打赏
  • 举报
回复
同是此问题,使用配置文件就读取不到值,但是配置和文件路径都是OK的,在idea里面可以直接点击获取参数
forgetmetoo 2015-09-20
  • 打赏
  • 举报
回复
楼主问题解决没有啊?我也遇到同样问题,搞不定。
Evankaka 2015-05-12
  • 打赏
  • 举报
回复
jdbc.properties放在src文件 夹下试试看
_还行_ 2015-05-12
  • 打赏
  • 举报
回复
显式问题是配置文件错误,读取不到。有没有想过为什么读取不到,不仅仅因为配置文件找不到。也可能是扫描配置文件的配置没有执行到。那就要想为什么了?再看看是不是包冲突呢?
kly824968443 2013-09-27
  • 打赏
  • 举报
回复
<context:property-placeholder location="classpath:jdbc.properties/>
u010413669 2013-09-27
  • 打赏
  • 举报
回复
<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="location"> <value>classpath:jdbc.properties</value> </property> </bean> <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="driverClassName"> 通过properties文件,获取driverClassName值 <value>${driverName}</value> </property> <property name="url" value="${url}"></property> <property name="username" value="${name}"></property> <property name="password" value="${pwd}"></property> </bean>
  • 打赏
  • 举报
回复
改为<context:property-placeholder location="jdbc.properties" />看看吧
编程点滴 2013-09-27
  • 打赏
  • 举报
回复
<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="locations"> <list> <value>classpath*:jdbc.properties</value> </property> </bean> 改为 <bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="locations"> <list> <value>classpath:jdbc.properties</value> </list> </property> </bean>
yoxibaga 2013-09-27
  • 打赏
  • 举报
回复
<context:property-placeholder location="classpath:jdbc.properties" /> 楼上正解~保险起见,加一个classpath
javaera 2013-09-26
  • 打赏
  • 举报
回复
up up up
javaera 2013-09-26
  • 打赏
  • 举报
回复
加了</list> <value>classpath*:jdbc.properties</value>*号去掉了还是不行 而且把这里面的值全部换成配置文件里对应的就可以运行 但是${}方法取不到值
  • 打赏
  • 举报
回复
bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="locations"> <list> <value>classpath*:jdbc.properties</value>*号去掉 </list>少一个结束标志 </property> </bean>
  • 打赏
  • 举报
回复
<property name="url"><value>${jdbc.url}</value></property> 你把这里面的值全部换成配置文件里对应的 如果再没出问题 那果然就是配置文件的问题了 话说你把配置文件放哪了

67,547

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧