在实战中遇到Tomcat连接超时问题,查阅相关资料整理如下,谨供大家参考。有不妥之处还望各位高人指点。
Tomcat Session连接时间设置
Tomcat自己提供了数据库连接池技术,当用户在一定时间不对数据库有操作时间后,就会自动关闭这个连接,这是为了更好的利用资源,防止浪费宝贵的数据库连接资源。
可以通过如下三种方式,设置Session连接的时间:
前两个都是修改tomcat的配置文件,在conf目录下
1. 在web.xml文件中通过参数指定:
xml 代码
<session-config>
<session-timeout>30</session-timeout>
</session-config>
时间单位:分钟。其中30表示30分钟,可以根据自己的实际需要进行修改。
2. 在server.xml文件中定义context的参数:xml 代码
<Context path="/livsorder" docBase="/home/httpd/html/livsorder"
defaultSessionTimeOut="3600" isWARExpanded="true"
isWARValidated="false" isInvokerEnabled="true"
isWorkDirPersistent="false"/>
时间单位:秒。其中3600表示3600秒,3600秒=1小时,可以 根据自己的实际需要进行修改。
3. 在程序中通过servlet api直接修改
java 代码
HttpSession session = request.getSession();
session.setMaxInactiveInterval(10);
时间单位:秒。设置为-1永不过期。