如何设置 jdbc 连接生存期和超时?
Posted
技术标签:
【中文标题】如何设置 jdbc 连接生存期和超时?【英文标题】:How to set jdbc connection lifetime and timeout? 【发布时间】:2016-10-27 11:10:49 【问题描述】:我想设置jdbc连接的生命周期和生命周期,我该怎么做。
我尝试使用属性。
Properties info = new properties();
info.put(user,"username");
info.put(password,"password");
info.put(connection lifetime, 0);
DriverManager.getConnection(server,info)
但这不起作用,请帮忙。
【问题讨论】:
可能与***.com/questions/1683949/…有关 你用的是什么数据库? 生命周期没有设置它连接生命周期仍然是大约 15 分钟 @rbntd 它只设置超时如何设置生命周期 【参考方案1】:试试这个:
info.setProperty(OracleConnection.CONNECTION_PROPERTY_THIN_NET_CONNECT_TIMEOUT, "2000");
参考:Setting Network Timeout for JDBC connection
请注意,并非所有 JDBC JAR 都支持以这种方式设置超时。有时您必须以编程方式进行。
【讨论】:
@RahulSingh 你能从 Oracle 配置这个吗?这似乎不是 Java 问题。 我想让它永远打开同一个连接我不想使用连接池 这听起来真是个坏主意。如果 Java 断开连接,则将其丢弃并将其返回到池中。 但这可能吗? 我不确定,看这里:docs.oracle.com/cd/B28359_01/java.111/e10788/…以上是关于如何设置 jdbc 连接生存期和超时?的主要内容,如果未能解决你的问题,请参考以下文章
超时时间已到。超时时间已到,但是尚未从池中获取连接。出现这种情况可能是因为所有池连接均在使用,并且达到了最大池大小。
用jdbc连接mysql数据库,执行程序一段时间后控制台报连接超时。why,如何解决!