2 回答
TA贡献1804条经验 获得超2个赞
Tomcat Session过期时间
Tomcat采用数据库连接池技术,当用户在一定时间不对数据库有操作时间后,就自动关闭这个连接,这是为了更好的利用资源,防止浪费宝贵的数据库连接资源。
可以采用如下三种方式,设置这个连接(Session)的过期时间:
前两个都是修改tomcat的配置文件conf
1. 在server.xml中定义context时采用如下定义:
xml 代码
<Context path="/livsorder" docBase="/home/httpd/html/livsorder"
defaultSessionTimeOut="3600" isWARExpanded="true"
isWARValidated="false" isInvokerEnabled="true"
isWorkDirPersistent="false"/>
3600秒=1小时
2. 在web.xml中通过参数指定:
xml 代码
<session-config>
<session-timeout>30</session-timeout>
</session-config>
其中30表示30分钟
3. 在程序中通过servlet api直接修改
java 代码
HttpSession ses = request.getSession();
ses.setMaxInactiveInterval(10);
设置单位为秒,设置为-1永不过期。
TA贡献1817条经验 获得超6个赞
session是服务器端的,和浏览器无关。
每次发送请求,会重置session的过期时间,一般web服务器的session过期时间都是几十分钟到1小时,持续发送,session就不会过期。
但这个期限,不是“永远”的,不同的web服务器,功能有所不同,但各种重启和回收都可能导致session过期,持续发送的请求也没有用。
添加回答
举报