我在写测试数据库方法的时候,发现如果抛出的异常是The Network Adapter could not establish the connection的话,时间非常长,我这边要20秒以上才抛出此异常。
代码如下:
try {
Class.forName("oracle.jdbc.OracleDriver");
System.out.println("开始测试连接数据库:"+"jdbc:oracle:thin:@"+ip+":"+port+":"+sid);
System.out.println(df.format(new Date()));
Connection con = DriverManager.getConnection("jdbc:oracle:thin:@"+ip+":"+port+":"+sid,user,password);
con.close();
con = null;
输出结果:
开始测试连接数据库:jdbc:oracle:thin:@10.192.0.189:1521:headdb
2014-04-16 10:50:42
java.sql.SQLException: The Network Adapter could not establish the connection
2014-04-16 10:51:03
结束测试10.192.0.189
请问如何缩短这中间的时间?
java中DriverManager.getConnection速度慢的问题
答案:2 悬赏:30 手机版
解决时间 2021-02-02 23:24
- 提问者网友:火车头
- 2021-02-02 19:44
最佳答案
- 五星知识达人网友:你可爱的野爹
- 2021-02-02 20:13
DriverManager类的
setLoginTimeout(int seconds)
设置驱动程序试图连接到某一数据库时将等待的最长时间,以秒为单位。
setLoginTimeout(int seconds)
设置驱动程序试图连接到某一数据库时将等待的最长时间,以秒为单位。
全部回答
- 1楼网友:持酒劝斜阳
- 2021-02-02 20:24
服务器设置了 timeout 参数
这个问题比较麻烦的。
连接池有个测试并重新连接的参数,不过你的这种不适合。
你最简单的方法,就是每次使用的时候,获得链接,用完了马上关闭,下次用重新连接。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯