您好,登錄后才能下訂單哦!
這篇“Session過(guò)期時(shí)間怎么設(shè)置”文章的知識(shí)點(diǎn)大部分人都不太理解,所以小編給大家總結(jié)了以下內(nèi)容,內(nèi)容詳細(xì),步驟清晰,具有一定的借鑒價(jià)值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來(lái)看看這篇“Session過(guò)期時(shí)間怎么設(shè)置”文章吧。
具體設(shè)置很簡(jiǎn)單,方法有三種:
1.在主頁(yè)面或者公共頁(yè)面中加入:session.setMaxInactiveInterval(900);
參數(shù)900單位是秒,即在沒(méi)有活動(dòng)15分鐘后,session將失效。設(shè)置為-1將永不關(guān)閉。
這里要注意這個(gè)session設(shè)置的時(shí)間是根據(jù)服務(wù)器來(lái)計(jì)算的,而不是客戶端。所以如果是在調(diào)試程序,應(yīng)該是修改服務(wù)器端時(shí)間來(lái)測(cè)試,而不是客戶端。
2.也是比較通用的設(shè)置session失效時(shí)間的方法,就是在項(xiàng)目的web.xml中設(shè)置
<lt;session-config>
<lt;session-timeout>15</session-timeout>
<lt;/session-config>
這里的15也就是15分鐘失效.
3.直接在應(yīng)用服務(wù)器中設(shè)置,如果是tomcat,可以在tomcat目錄下conf/web.xml中
找到<session-config>元素,tomcat默認(rèn)設(shè)置是30分鐘,只要修改這個(gè)值就可以了,負(fù)數(shù)或0為不限制session失效時(shí)間。
如圖:
需要注意的是如果上述三個(gè)地方如果都設(shè)置了,有個(gè)優(yōu)先級(jí)的問(wèn)題,從高到低:
(1)>(2)>(3)
session的過(guò)期時(shí)間計(jì)算是從當(dāng)前session的最后一次請(qǐng)求開(kāi)始的。
下面是測(cè)試代碼:
第一步:配置web.xml(設(shè)置失效時(shí)間,和監(jiān)聽(tīng)路徑)
1.失效時(shí)間單位是分鐘,即1分鐘后失效
<session-config>
<session-timeout>1</session-timeout>
</session-config>
2.設(shè)置監(jiān)聽(tīng)路徑 (監(jiān)聽(tīng)類所在的全路徑)
<listener>
<listener-class>
com.controller.SessionListener
</listener-class>
</listener>
3.新建監(jiān)聽(tīng)類,代碼如下
package com.controller;import javax.servlet.http.HttpSession;import javax.servlet.http.HttpSessionEvent;import javax.servlet.http.HttpSessionListener;import org.springframework.stereotype.Controller;public class SessionListener implements HttpSessionListener{ public void sessionCreated(HttpSessionEvent event) { HttpSession ses = event.getSession(); String id=ses.getId()+ses.getCreationTime(); System.out.println("1111111111111"); //創(chuàng)建會(huì)話時(shí)輸出 } public void sessionDestroyed(HttpSessionEvent event) { HttpSession ses = event.getSession(); String id=ses.getId()+ses.getCreationTime(); synchronized (this) { System.out.println("2222222222222");//失效時(shí)輸出} } }
以上就是關(guān)于“Session過(guò)期時(shí)間怎么設(shè)置”這篇文章的內(nèi)容,相信大家都有了一定的了解,希望小編分享的內(nèi)容對(duì)大家有幫助,若想了解更多相關(guān)的知識(shí)內(nèi)容,請(qǐng)關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。