0

我正在使用 spring3 和 org.apache.commons.dbcp.BasicDataSource 和 apache tomcat 6.x。

一旦应用程序启动它就可以正常工作,但一段时间后它无法连接到数据库......重新启动它会再次连接。

以下是 applicationContect.xml 中使用的配置

    <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close" p:initialSize="5" p:maxActive="15" p:maxIdle="5" p:driverClassName="com.mysql.jdbc.Driver" p:url="jdbc:mysql://<Host>/<schema>?useUnicode=true&amp;" p:username="<uName>" p:password="<pwd>" p:testOnBorrow="true" p:validationQuery="SELECT 1"/>

        <bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
    <property name="dataSource">
        <ref bean="dataSource" />
        </property>
</bean>

配置会不会有问题?另外,我没有关闭/处理 jdbc 连接/结果集,我假设 spring-jdbc 会处理它。

我收到以下异常:

    org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC Connection; nested exception is org.apache.commons.dbcp.SQLNestedException: Cannot get a connection, general error
4

1 回答 1

0

使用 jdbcTemplate.query 执行存储过程有时会失败。

相反,我使用 org.springframework.jdbc.core.simple.SimpleJdbcCall 来调用存储过程及其工作正常

于 2013-07-09T11:12:01.657 回答