java设置session过期时间的实现方法
这篇文章主要介绍了java设置session过期时间的实现方法,以实例形式详细讲述了具体实现过程,非常具有参考借鉴价值,需要的朋友可以参考下
id="cproIframe_u1892994_2" width="580" height="90" src="http://pos.baidu.com/acom?adn=3&at=231&aurl=&cad=1&ccd=24&cec=GBK&cfv=17&ch=0&col=zh-CN&conBW=0&conOP=1&cpa=1&dai=2&dis=0<r=https%3A%2F%2Fwww.baidu.com%2Flink%3Furl%3DAJXcEVwxXCtD98Z4KgdzaoH9d3w3hwV2VRhCz5zCsfrgJJn1QH0M8XxPqPlz-YBE%26wd%3D%26eqid%3Dbc9b51510000a52d00000005559e1299<u=http%3A%2F%2Fwww.jb51.net%2Farticle%2F56785.htm&lu_161=0&lunum=6&n=jb51_cpr&pcs=1281x658&pis=10000x10000&ps=514x175&psr=1440x900&pss=1281x515&qn=5ea6ffcd365dc9e0&rad=&rsi0=580&rsi1=90&rsi5=4&rss0=%23FFFFFF&rss1=%23F7FCFF&rss2=%230000ff&rss3=%23444444&rss4=%23008000&rss5=&rss6=%23e10900&rss7=&scale=&skin=tabcloud_skin_3&stid=5&td_id=1892994&titFF=%E5%AE%8B%E4%BD%93&titFS=12&titTA=left&tn=text_default_580_90&tpr=1436422812771&ts=1&version=2.0&xuanting=0&dtm=BAIDU_DUP2_SETJSONADSLOT&dc=2&di=u1892994&ti=java%E8%AE%BE%E7%BD%AEsession%E8%BF%87%E6%9C%9F%E6%97%B6%E9%97%B4%E7%9A%84%E5%AE%9E%E7%8E%B0%E6%96%B9%E6%B3%95_java_%E8%84%9A%E6%9C%AC%E4%B9%8B%E5%AE%B6&tt=1436422812747.293.609.609" align="center,center" marginwidth="0" marginheight="0" scrolling="no" frameborder="0" allowtransparency="true">
本文实例讲述了java设置session过期时间的实现方法,分享给大家供大家参考。具体实现方法如下:
1、Timeout in the deployment descriptor (web.xml)
以分钟为单位
复制代码代码如下:
<web-app ...>
<session-config>
<session-timeout>20</session-timeout>
</session-config>
</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);
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设置产生效果的优先循序是,先程序后配置,先局部后整体。
希望本文所述对大家的Java程序设计有所帮助。
本文详细介绍了 Java 设置 session 过期时间的多种实现方法,包括部署描述符配置、编码方式设置及程序中定义,同时指出配置与编码方式设置的优先级顺序,并提供了实例代码供参考。
403

被折叠的 条评论
为什么被折叠?



