问题描述:
正常登录系统,不操作,过20分钟后,超时登录浏览器卡死问题(这时用别的浏览器打开时能正常登录)

环境:tomcat与数据库服务器不在同一个网段。

分析
出错的原因是,获取数据库连接时超时,默认需要等20分钟后才返回数据数据库连接超时错误,导致这个期间浏览器卡死。

解决方案
方案一:修改tomcat中数据库的连接参数
在tomcat/conf/context.xml文件中,为每个数据库连接添加以下参数
connectionProperties=”SetBigStringTryClob=true; oracle.net.READ_TIMEOUT=5000;”
validationQuery=”select sysdate from dual”

其中:
如果jdbc的版本<10.1.0.5时, 使用oracle.net.READ_TIMEOUT=5000;
如果jdbc的版本>=10.1.0.5时,使用oracle.jdbc.ReadTimeout=5000;
其中的5000单位是秒,可以结合自己的实际需求调整大小。

方案二:调整网络
使得tomcat与数据库服务器在同一个网段内。