Java 如何处理:SQL错误:0、SQLState:08006和08003?

Java 如何处理:SQL错误:0、SQLState:08006和08003?,java,postgresql,hibernate,jdbc,heroku-postgres,Java,Postgresql,Hibernate,Jdbc,Heroku Postgres,我在heroku上有PostgreSQL数据库的应用程序。解析器在我的电脑上运行,它每10分钟从heroku的数据库中保存和读取数据,并使用hibernate进行交互。以下是配置: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "ht

我在heroku上有PostgreSQL数据库的应用程序。解析器在我的电脑上运行,它每10分钟从heroku的数据库中保存和读取数据,并使用hibernate进行交互。以下是配置:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
        "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
        "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
    <session-factory>
        <property name="hibernate.connection.driver_class">org.postgresql.Driver</property>
        <property name="hibernate.connection.url">jdbc:postgresql:url</property>
        <property name="hibernate.connection.username">user</property>
        <property name="hibernate.connection.password">pass</property>
        <property name="hibernate.dialect">org.hibernate.dialect.PostgreSQL94Dialect</property>
        <property name="show_sql">true</property>

        <property name="hibernate.c3p0.idle_test_period">14400</property><property name="hibernate.c3p0.timeout">25200</property>
        <property name="hibernate.c3p0.max_size">15</property>
        <property name="hibernate.c3p0.min_size">3</property>
        <property name="hibernate.c3p0.max_statements">0</property>
        <property name="hibernate.c3p0.preferredTestQuery">select 1;</property>

    </session-factory>
</hibernate-configuration>


有什么方法可以解决此问题?

您的数据库连接正在关闭,并且您仅每3小时测试一次连接的有效性。空闲测试显然是错误的

除非您在遗留环境中工作,否则应该设置
hibernate.c3p0.testconnectiononcheckout=true
,这样您将始终获得有效的连接


如果您使用的是JDBC4驱动程序(希望您是这样),那么
preferredTestQuery
也是不必要的。

您的数据库连接正在关闭,并且您仅每3小时测试一次它们的有效性。空闲测试显然是错误的

除非您在遗留环境中工作,否则应该设置
hibernate.c3p0.testconnectiononcheckout=true
,这样您将始终获得有效的连接


如果您使用的是JDBC4驱动程序(希望您是)。

为了获得更好的帮助,您可能需要配置您的系统,以便接收英语异常消息。为了获得更好的帮助,您可能需要配置您的系统,以便接收英语异常消息。
окт 25, 2019 12:44:59 AM org.hibernate.engine.jdbc.spi.SqlExceptionHelper logExceptions
WARN: SQL Error: 0, SQLState: 08006
окт 25, 2019 12:44:59 AM org.hibernate.engine.jdbc.spi.SqlExceptionHelper logExceptions
ERROR: Ошибка ввода/ввывода при отправке бэкенду
окт 25, 2019 12:44:59 AM org.hibernate.engine.jdbc.spi.SqlExceptionHelper logExceptions
WARN: SQL Error: 0, SQLState: 08003
окт 25, 2019 12:44:59 AM org.hibernate.engine.jdbc.spi.SqlExceptionHelper logExceptions
ERROR: Соединение уже было закрыто