Java 通过JDBC连接到HANA DB时出现连接问题

Java 通过JDBC连接到HANA DB时出现连接问题,java,jdbc,spring-jdbc,hana,Java,Jdbc,Spring Jdbc,Hana,我正在通过ngdbc.jar连接HANA DB。连接正确,但运行查询3-4次后,与HANA DB的连接丢失。当我重新启动JAVA服务器时,它会工作3-4次。有人能帮忙吗 错误消息- WARN [org.hibernate.util.JDBCExceptionReporter] (http--0.0.0.0-8080-6) SQL Error: -708, SQLState: 08006 ERROR [org.hibernate.util.JDBCExceptionReporter] (htt

我正在通过ngdbc.jar连接HANA DB。连接正确,但运行查询3-4次后,与HANA DB的连接丢失。当我重新启动JAVA服务器时,它会工作3-4次。有人能帮忙吗

错误消息-

WARN  [org.hibernate.util.JDBCExceptionReporter] (http--0.0.0.0-8080-6) SQL Error: -708, SQLState: 08006
 ERROR [org.hibernate.util.JDBCExceptionReporter] (http--0.0.0.0-8080-6) Data receive failed [Connection reset].
 INFO  [com.ultimatix.controller.MetricsController] (http--0.0.0.0-8080-6) context setMonthFreezeDateorg.hibernate.exception.JDBCConnectionException: could not execute query
 ERROR [org.hibernate.transaction.JDBCTransaction] (http--0.0.0.0-8080-6) JDBC rollback failed: com.sap.db.jdbc.exceptions.jdbc40.SQLNonTransientConnectionException: Connection to database server lost; check server and network status [System error: Socket closed]

根据您的日志,我可以看到您正在使用Hibernate

你能在你的书堆上详细说明一下吗

AS @ RC说,如果你在java服务器中做了这个,你应该考虑连接池而不是打开直接连接。 可能是因为您的连接保持打开的时间过长而超时

这些都是猜测,直到您可以共享任何日志或示例代码

还有一件事,仅与ngjdbc驱动程序相关,有一个“reconnect”连接属性,默认设置为false


考虑到

yup连接可能会过期,请使用连接池和适当的“健全性检查”查询。如何执行这些@RC。请检查更新的问题@markrottveeli在执行每个查询之前打开连接,并在执行查询后立即在finally块中关闭连接。session=this.sessionFactory.openSession();和执行会话后。flush();session.clear();session.close();您好,根据方法的名称,我猜您正在更新SAP HANA中的一个表。但是,在关闭刷新、清除和提交之前,您没有说明是否正在提交更改。您是否尝试运行一系列select only语句?