java web为什么我的session过期时间设为永不过期,浏览器session还是会过期

2024-12-20 03:06:12
推荐回答(3个)
回答1:

用cookie,把失效时间设置很长或者永不过期

回答2:

浏览器关闭session就一起关闭了吧...

回答3:

Tomcat Session过期时间
Tomcat采用数据库连接池技术,当用户在一定时间不对数据库有操作时间后,就自动关闭这个连接,这是为了更好的利用资源,防止浪费宝贵的数据库连接资源。
可以采用如下三种方式,设置这个连接(Session)的过期时间:
前两个都是修改tomcat的配置文件conf
1. 在server.xml中定义context时采用如下定义:
xml 代码
  defaultSessionTimeOut="3600" isWARExpanded="true"
  isWARValidated="false" isInvokerEnabled="true"
  isWorkDirPersistent="false"/>
3600秒=1小时
2. 在web.xml中通过参数指定:
xml 代码

30

其中30表示30分钟
3. 在程序中通过servlet api直接修改
java 代码

HttpSession ses = request.getSession();
ses.setMaxInactiveInterval(10);
设置单位为秒,设置为-1永不过期。