Tomcat设置session超时的几种方式

本文详细介绍了如何在不同级别设置Tomcat的会话超时,包括Web容器级别、Web应用级别、servlet级别以及通过代码设置。较低级别的设置会覆盖较高级别,例如在`web.xml`中配置默认会话超时,或在运行时通过`setMaxInactiveInterval`方法进行动态调整。此外,还提到了在`server.xml`中为特定Context配置会话超时的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Tomcat的会话超时可以在多个级别上设置:tomcat实例级别、Web应用级别、servlet级别以及运行时Context代码级别。 较低级别的设定会覆盖较高级别的设定。

  1. Web容器级别
<!--在conf/web.xml中-->

<!-- ==================== Default Session Configuration ================= -->  
<!-- You can set the default session timeout (in minutes) for all newly   -->  
<!-- created sessions by modifying the value below.                       --> 
<session-config>  
	<!--以分钟为单位的,默认是30分-->
    <session-timeout>30</session-timeout>  
</session-config>  
  1. webapp级别
<!--在webapp中的 WEB-INF/web.xml-->

<!-- 配置Session失效时间 -->  
<session-config>  
	<!--以min为单位-->
   <session-timeout>30</session-timeout>  
</session-config>  
  1. 代码中硬编码
session.setMaxInactiveInterval(30*60);	//以秒为单位  

优先级,越细粒度优先级越高,也就是3>2>1

  1. 还有一种比较少见配置,将Context配置在server.xml里
<!--修改conf/server.xml-->
<!--单位为秒-->
<Context path="/test" docBase="/home/httpd/html/test"  
    defaultSessionTimeOut="3600" isWARExpanded="true"  
    isWARValidated="false" isInvokerEnabled="true"  
    isWorkDirPersistent="false"/>  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

讓丄帝愛伱

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值