实例介绍
【实例截图】
【核心代码】
Tomcat Session过期时间
Tomcat采用数据库连接池技术,当用户在一定时间不对数据库有操作时间后(一般为1-8个小时),就自动关闭已打开的连接,这是为了更好的利用资源,防止浪费宝贵的数据库连接资源。
可以采用如下三种方式,设置这个连接(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永不过期。
其他方式:修改数据库超时参数,添加重复连接
Tomcat设置session超时的几种方式
博客分类:
· 新增配置箱
Tomcat的会话超时可以在多个级别上设置:tomcat实例级别、Web应用级别、servlet级别以及运行时Context代码级别。 较低级别的设定会覆盖较高级别的设定。
Tomcat可以在以下几个地方设置session超时:
1 Web容器级别
在conf/web.xml中
1. <!-- ==================== Default Session Configuration ================= -->
2. <!-- You can set the default session timeout (in minutes) for all newly -->
3. <!-- created sessions by modifying the value below. -->
4.
5. <session-config>
6. <session-timeout>30</session-timeout>
7. </session-config>
这里是以分钟为单位的,默认是30分;
2 webapp级别
在webapp中的 WEB-INF/web.xml
1. <!-- 配置Session失效时间 -->
2. <session-config>
3. <session-timeout>30</session-timeout>
4. </session-config>
也是以min为单位;
3 应用程序代码中:硬编码
1. session.setMaxInactiveInterval(30*60);//以秒为单位
优先级,越细粒度优先级越高,也就是3>2>1
4 还要一种配置,但现在比较少见了,因为需要将Context配置在server.xml里:
这就是修改conf/server.xml
1. <Context path="/test" docBase="/home/httpd/html/test"
2. defaultSessionTimeOut="3600" isWARExpanded="true"
3. isWARValidated="false" isInvokerEnabled="true"
4. isWorkDirPersistent="false"/>
单位为秒
附:
重启时保持会话
在关闭Tomcat实例/取消Web应用部署时,缺省会把当前的活动会话保存到硬盘上,并在重启启动/部署 时在把会话从硬盘上加载到内存中。
文件保存在各目录下的SESSIONS.SER中。有时可能会话中保存了敏感信息,或者不希望使用这个特 性,可以配置Context.xml文件关闭这个选项。
配置 manager.pathname == ""即可,形如:
<Manager pathname="" />
标签: 数据库连接池
相关软件
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论