您好,登錄后才能下訂單哦!
本篇內容主要講解“Session域生命周期是什么”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“Session域生命周期是什么”吧!
Session存儲在服務器的內存中(為了高速存取)。
Sessinon在用戶訪問第一次訪問服務器時創建,需要注意只有訪問JSP、Servlet等程序時才會創建Session,只訪問HTML、IMAGE等靜 態資源并不會創建Session,可調用request.getSession(true)強制生成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域生命周期是什么”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。