日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

Java Web开发Session超时设置

發布時間:2023/12/10 java 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Java Web开发Session超时设置 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

原文鏈接:http://zmx.iteye.com/blog/1846181

在Java Web開發中,Session為我們提供了很多方便,Session是由瀏覽器和服務器之間維護的。Session超時理解為:瀏覽器和服務器之間創建了一個Session,由于客戶端長時間(休眠時間)沒有與服務器交互,服務器將此Session銷毀,客戶端再一次與服務器交互時之前的Session就不存在了。

設置Session超時時間方式:

  • 方式一:
    在web.xml中設置session-config如下:
<session-config><session-timeout>2</session-timeout></session-config>

即客戶端連續兩次與服務器交互間隔時間最長為2分鐘,2分鐘后session.getAttribute()獲取的值為空

API信息:

session.getCreationTime() 獲取session的創建時間session.getLastAccessedTime() 獲取上次與服務器交互時間session.getMaxInactiveInterval() 獲取session最大的不活動的間隔時間,以秒為單位120秒。

方式二:
在Tomcat的/conf/web.xml中session-config,默認值為:30分鐘

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

方式三:
在Servlet中設置

HttpSession session = request.getSession();session.setMaxInactiveInterval(60);//單位為秒

說明:
1.優先級:Servlet中API設置 > 程序/web.xml設置 > Tomcat/conf/web.xml設置
實際應用:
項目中,在web.xml中設置超時時間為30min。開發過程中,需要修改超時時間為20秒,比如為了測試超時。只需要在代碼中加入下面這一句話就可以了,不需要時刪掉即可:

@RequestMapping("login")public ModelAndView login(String account, String password, String checkcode, HttpSession session) {session.setMaxInactiveInterval(20);//設置20秒超時......//登錄業務代碼}

2.若訪問服務器session超時(本次訪問與上次訪問時間間隔大于session最大的不活動的間隔時間)了,即上次會話結束,但服務器與客戶端會產生一個新的會話,之前的session里的屬性值全部丟失,產生新的sesssionId
3.客戶端與服務器一次有效會話(session沒有超時),每次訪問sessionId相同,若代碼中設置了session.setMaxInactiveInterval()值,那么這個session的最大不活動間隔時間將被修改,并被應用為新值。
4.Session的銷毀(代表會話周期的結束):在某個請求周期內調用了Session.invalidate()方法,此請求周期結束后,session被銷毀;或者是session超時后自動銷毀;或者客戶端關掉瀏覽器
5.對于JSP,如果指定了<%@ page session=”false”%>,則在JSP中無法直接訪問內置的session變量,同時也不會主動創建session,因為此時JSP未自動執行request.getSession()操作獲取session。

總結:

在程序開發過程中,我們可以在客戶端每次與服務器交互時檢查SessionID(Session中屬性值,非HttpServlet環境開發中也可以用其它的Key值代替),用于會話管理。

總結

以上是生活随笔為你收集整理的Java Web开发Session超时设置的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。