Java 从数据库查询结果时发生异常?

Java 从数据库查询结果时发生异常?,java,oracle,spring,hibernate,Java,Oracle,Spring,Hibernate,我正在使用spring和hibernate应用程序。我正在使用C3P0连接池连接到oracle数据库。但我经常会低于例外 Database failure Exception java.net.SocketTimeoutException: Read timed out at java.net.SocketInputStream.socketRead0(Native Method) at java.net.SocketInputStream.read(Unknown Sourc

我正在使用spring和hibernate应用程序。我正在使用C3P0连接池连接到oracle数据库。但我经常会低于例外

Database failure Exception 
java.net.SocketTimeoutException: Read timed out
    at java.net.SocketInputStream.socketRead0(Native Method)
    at java.net.SocketInputStream.read(Unknown Source)
    at org.apache.coyote.http11.InternalInputBuffer.fill(InternalInputBuffer.java:746)
    at org.apache.coyote.http11.InternalInputBuffer$InputStreamInputBuffer.doRead(InternalInputBuffer.java:776)
这与C3P0配置有关吗?以下是c3p0配置:

<bean id="someDataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
            <property name="driverClass" value="${driverClassName}" />
            <property name="jdbcUrl" value="${url}" />
            <property name="user" value="${username}" />
            <property name="password" value="${password}" />
            <!-- pool sizing -->
        <property name="initialPoolSize" value="3" />
        <property name="minPoolSize" value="6" />
        <property name="maxPoolSize" value="25" />
        <property name="acquireIncrement" value="3" />
        <property name="maxStatements" value="${common.db.max.statements}" />
        <!-- retries -->
        <property name="acquireRetryAttempts" value="1" />
        <property name="acquireRetryDelay" value="1000" /> <!-- 1s -->

            <property name="preferredTestQuery" value="select sysdate from dual" />
      </bean>


谢谢

有些查询需要花费太多时间才能返回响应。异常跟踪似乎是异常响应的最终堆栈

如果捕获异常响应的“causedBy”跟踪,您将能够精确地指出占用大量执行时间的代码逻辑


希望这有帮助

这可能是因为您有一些查询执行的时间太长,导致套接字读取超时。你们能检查一下在异常时刻执行的是什么查询吗?你们现在有56个声誉并且能够评论。。。这更多的是一个评论,而不是一个问题的答案(它的边界)。。。