java设置session过期时间的实现方法

本文实例讲述了java设置session过期时间的实现方法,分享给大家供大家参考。具体实现方法如下:

1、Timeout in the deployment descriptor (web.xml)
以分钟为单位

<web-app ...>
<session-config>
<session-timeout>20</session-timeout>
</session-config>
</web-app>

 上面这种设置,对整个web应用生效。当客户端20分钟内都没有发起请求时,容器会将session干掉。

2、Timeout with setMaxInactiveInterval()

通过编码方式,指定特定的session的过期时间,以秒为单位。例如:

HttpSession session = request.getSession();
session.setMaxInactiveInterval(20*60);

 The above setting is only apply on session which call the “setMaxInactiveInterval()” method, and session will be kill by container if client doesn't make any request after 20 minutes.

 

Thoughts….
This is a bit confusing , the value in deployment descriptor (web.xml) is in “minute”, but the setMaxInactiveInterval() method is accept the value in “second”. Both functions should synchronize it in future release

3、在程序中定义,单位为秒,设置为-1表示永不过期,示例代码为:

session.setMaxInactiveInterval(30*60);

 Session设置产生效果的优先循序是,先程序后配置,先局部后整体。

扫描二维码关注公众号,回复: 317490 查看本文章

 

http://www.jb51.net/article/56785.htm

 

猜你喜欢

转载自zgphacker2010.iteye.com/blog/2391235