spring加载jdbc.properties配置文件,读取整数报错。
配置如下:
<context:property-placeholder location="classpath:jdbc.properties" />
<bean id="dataSourse"
class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName" value="${driverClassName}" />
<property name="url" value="${url}" />
<property name="username" value="${username}" />
<property name="password" value="${password}" />
<!-- 连接池启动时的初始值 -->
<property name="initialSize" value="${initialSize}" />
<!-- 连接池的最大值 -->
<property name="maxActive" value="${maxActive}" />
<!-- 最大空闲值.当经过一个高峰时间后,连接池可以慢慢将已经用不到的连接慢慢释放一部分,一直减少到maxIdle为止 -->
<property name="maxIdle" value="${maxIdle}" />
<!-- 最小空闲值.当空闲的连接数少于阀值时,连接池就会预申请去一些连接,以免洪峰来时来不及申请 -->
<property name="minIdle" value="${minIdle}" />
</bean>
报错:
java.lang.NumberFormatException : For input string: "${initialSize}"
at java.lang.
NumberFormatException .forInputString(NumberFormatException.java:48)
at java.lang.Integer.parseInt(Integer.java:447)
at java.lang.Integer.valueOf(Integer.java:553)
------解决方案-------------------- 你的jdbc.properties里有initialSize这个属性吗?
------解决方案-------------------- ${initialSize}看看这个是不是有字符或者空格啥的。
------解决方案-------------------- <property name="username" value="${username}" />
<property name="password" value="${password}" />
name 这些可以读出,看下和 ${initialSize} 有什么不同
------解决方案-------------------- 你jdbc.properties文件里有initialSize这个属性吗
------解决方案-------------------- 引用: Quote: 引用:
你的jdbc.properties里有initialSize这个属性吗?
这是jdbc.properties的配置:
initialSize=1
maxActive=500
maxIdle=20
minIdle=10刚才没仔细看,他提示转换的是转换出现问题,你的initialSize=1后边是不是有空格之类的,也可能是因为回车的关系,不行你把initialSize=1放到最后一行
------解决方案-------------------- 还是写死吧<property name="initialSize" value="30" />
------解决方案-------------------- java.lang.NumberFormatException: For input string: "${initialSize}"
这个异常你应该知道吧,不行你换个名字,你取名aaa=3,然后<property name="initialSize" value="${aaa}" />试试