温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Session域生命周期是什么

发布时间:2022-09-28 15:33:58 来源:亿速云 阅读:144 作者:iii 栏目:编程语言

本篇内容主要讲解“Session域生命周期是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Session域生命周期是什么”吧!

Session的生命周期

Session存储在服务器的内存中(为了高速存取)。

Session何时生效

Sessinon在用户访问第一次访问服务器时创建,需要注意只有访问JSP、Servlet等程序时才会创建Session,只访问HTML、IMAGE等静 态资源并不会创建Session,可调用request.getSession(true)强制生成Session。

Session何时失效

1.服务器会把长时间没有活动的Session从服务器内存中清除,此时Session便失效。Tomcat中Session的默认失效时间为20分钟。

2.调用Session的invalidate方法。

HttpSession session = request.getSession();
session.invalidate();//注销该request的所有session

3.session的过期时间是从什么时候开始计算的?是从一登录就开始计算还是说从停止活动开始计算?

答:从session不活动的时候开始计算,如果session一直活动,session就总不会过期。

从该Session未被访问,开始计时; 一旦Session被访问,计时清0;

4.设置session的失效时间

1)web.xml中

<session-config>
    <session-timeout>30</session-timeout></session-config>

2)在程序中手动设置

session.setMaxInactiveInterval(30 * 60);//设置单位为秒,设置为-1永不过期

3)tomcat也可以修改session过期时间,在server.xml中定义context时采用如下定义:

<Context path="/livsorder"docBase="/home/httpd/html/livsorder"   defaultSessionTimeOut="3600"isWARExpanded="true"   
isWARValidated="false" isInvokerEnabled="true"   isWorkDirPersistent="false"/>

[注]:若要移除Session中特定的值,可以调用removeAttribute方法,但request中的SessionID仍不变,只是其中的值发生了改变, Session还是原来的Session。

request.getSession().removeAttribute("xxx");

到此,相信大家对“Session域生命周期是什么”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI