在休眠中,Socket超时和查询超时有什么区别?

时间:2016-01-20 12:10:51

标签: java oracle hibernate sockets jdbc

我有一项任务是为数据库调用实现超时。我们使用hibernate框架。我在hibernate.xml文件中配置了以下超时。

Hibernate.xml

  • 连接超时 - > hibernate.c3p0.timeout:44000
  • Socket Read 超时 - > hibernate.connection.oracle.jdbc.ReadTimeout:60000

我想知道套接字读取超时和查询超时之间的区别。配置查询超时的任何帮助都会更好。 在此先感谢!!

1 个答案:

答案 0 :(得分:0)

当您使用并关闭连接时,休眠会保留它以便以后再次使用...

当达到Connection timeout时,连接将关闭,如果池未满,则打开另一个连接。

查询超时是强制关闭(长查询)之前允许查询运行的最长时间

如果您遇到套接字超时问题,则应设置validationQuery类似

Oracle数据库的

select 1 from dual
MySQL数据库select 1