系统连接数据库一直很正常,前些天配了新的笔记本,问题也随之而来了,登录系统需要三四分钟。这当然不正常,马上找原因。
开始以为是XP SP3补丁的问题,因为一直盛传SP3对某些程序的兼容有问题,换了SP2依然不行。接下来又怀疑机器网卡问题,为什么只有登录时速度慢,进入系统后其他操作就正常了呢?网络原因看来也被排除了。
正在无计可施时,突然想到会不会是JDK的问题?马上下载最新的1.6版,安装....运行......OK,一切正常了!难道是1.5对新双核CPU不支持吗?我们的打包程序时1.5的,不可能为了这套系统重新购买1.6版打包器,并且价格也不便宜啊。。。。。通过查资料终于发现原因之所在,据说是JDK1.5的一个bug,在获取Connection时,由于使用的是默认代理,就有可能得到一个非最佳的路径,但为什么使用旧本没问题就不得而知了。
解决方案其实就是在获取Connection之前添加如下代码:
ProxySelector.setDefault(null);