关闭

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

275人阅读 评论(0) 收藏 举报
分类:

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

投稿:shichen2014 字体:[增加 减小] 类型:转载
这篇文章主要介绍了java设置session过期时间的实现方法,以实例形式详细讲述了具体实现过程,非常具有参考借鉴价值,需要的朋友可以参考下
<iframe id="cproIframe_u1892994_2" width="580" height="90" src="http://pos.baidu.com/acom?adn=3&amp;at=231&amp;aurl=&amp;cad=1&amp;ccd=24&amp;cec=GBK&amp;cfv=17&amp;ch=0&amp;col=zh-CN&amp;conBW=0&amp;conOP=1&amp;cpa=1&amp;dai=2&amp;dis=0&amp;ltr=https%3A%2F%2Fwww.baidu.com%2Flink%3Furl%3DAJXcEVwxXCtD98Z4KgdzaoH9d3w3hwV2VRhCz5zCsfrgJJn1QH0M8XxPqPlz-YBE%26wd%3D%26eqid%3Dbc9b51510000a52d00000005559e1299&amp;ltu=http%3A%2F%2Fwww.jb51.net%2Farticle%2F56785.htm&amp;lu_161=0&amp;lunum=6&amp;n=jb51_cpr&amp;pcs=1281x658&amp;pis=10000x10000&amp;ps=514x175&amp;psr=1440x900&amp;pss=1281x515&amp;qn=5ea6ffcd365dc9e0&amp;rad=&amp;rsi0=580&amp;rsi1=90&amp;rsi5=4&amp;rss0=%23FFFFFF&amp;rss1=%23F7FCFF&amp;rss2=%230000ff&amp;rss3=%23444444&amp;rss4=%23008000&amp;rss5=&amp;rss6=%23e10900&amp;rss7=&amp;scale=&amp;skin=tabcloud_skin_3&amp;stid=5&amp;td_id=1892994&amp;titFF=%E5%AE%8B%E4%BD%93&amp;titFS=12&amp;titTA=left&amp;tn=text_default_580_90&amp;tpr=1436422812771&amp;ts=1&amp;version=2.0&amp;xuanting=0&amp;dtm=BAIDU_DUP2_SETJSONADSLOT&amp;dc=2&amp;di=u1892994&amp;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&amp;tt=1436422812747.293.609.609" align="center,center" marginwidth="0" marginheight="0" scrolling="no" frameborder="0" allowtransparency="true"></iframe>

本文实例讲述了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设置产生效果的优先循序是,先程序后配置,先局部后整体。

希望本文所述对大家的Java程序设计有所帮助。

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:1160707次
    • 积分:15500
    • 等级:
    • 排名:第699名
    • 原创:37篇
    • 转载:2380篇
    • 译文:0篇
    • 评论:32条