spring中读取数据库的property配置文件


 自己刚开始接触spring,在读取数据库的配置文件时总是出错,不过后来解决了,事实上很简单。 

step 1

书写数据库的一些连接属性,起名为 db.property 吧,比如用sqlserver数据库:

user= sa
password= 123hcc
jdbcUrl= jdbc:sqlserver://localhost:1433;DatabaseName=WebDB
driverClass= com.microsoft.sqlserver.jdbc.SQLServerDriver
initPoolSize= 5
maxPoolSize= 10

step 2

在配置bean的xml(命名为 db.xml 吧)里导入资源文件db.property

<context:property-placeholder location="classpath:db.property"/>

step 3

接下来就是配置DataSource的bean实例

<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
	<property name="user" value="${user}"></property>
	<property name="password" value="${password}"></property>
	<property name="jdbcUrl" value="${jdbcUrl}"></property>
	<property name="driverClass" value="${driverClass}"></property>
		
	<property name="initialPoolSize" value="${initPoolSize}"></property>
	<property name="maxPoolSize" value="${maxPoolSize}"></property>
</bean>

这样基本上就没有问题了。

不过像我这样的初学者即使按照别人的步骤一步步来,也会出现很多错误,下面是我配置过程中遇到的,希望对大家有帮助。

problem 1

org.springframework.beans.factory.BeanInitializationException: 

Could not load properties; nested exception is java.io.FileNotFoundException: 

class path resource [db.property] cannot be opened because it does not exist

提示说db.property找不到

因为我们配置的是:

<context:property-placeholder location="classpath:db.propery"/>

所以确保db.property文件在src目录下,不要创建在项目目录下

problem 2

提示说无法解析  "${user}"  

这个问题很奇怪,SpEL表达式一定没错,当时我也花了很长时间,就是不知道错在哪。

后来我又看了下db.property文件,由于平时写代码时总喜欢在 "=" 前后空一格,所以就写成  "user  =  sa",

然后我就把user后面的空格给删了,结果问题就解决了....

但是当我写这篇博客时,为了写报错信息想把问题重现时,重新加上空格,运行时他又不报错了....  我也不知道怎么回事。

如果同学实在不知道错在哪里,可以试试看去掉user后面的空格,或许就能解决了 。





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值