欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

了解java中的session

 更新時間:2017年11月24日 09:14:41   作者:小周  
這篇文章主要介紹了了解java中的session的相關(guān)問題,什么是session,session怎么用等,具有一定參考價值,需要的朋友可以了解下。

先看看對session的一個比較好的闡述:

session就是一個會話 ,在瀏覽器不關(guān)閉的前提下,可以保存用戶的信息,就是象一個臨時的容器,來存放這些臨時的東西。比如登錄的保存用戶信息從一個網(wǎng)頁跳轉(zhuǎn)到另一個網(wǎng)頁,用戶信息就可以用session保存網(wǎng)站購物車可以用session實現(xiàn)

為什么需要Session

這是為了填補 Http 協(xié)議的局限,當用戶去訪問一個頁面,服務端返回完了請求(如,你訪問完一個網(wǎng)頁,這個頁面將頁面內(nèi)容,界面UI呈現(xiàn)給你),就算是結(jié)束了,就斷開了,服務端不再去追蹤客戶端(瀏覽器)的任務狀態(tài),所以 Http 的每次請求都是獨立的,非連續(xù)的,Http 也稱為無狀態(tài)協(xié)議。那我們?nèi)绻朐谝粋€場合,或是一個特定過程,操作些用戶自己的數(shù)據(jù),就會很麻煩,甚至很危險。比如你可以通過 url 傳參數(shù)的方式與服務器交互,并實現(xiàn)操作;

Session(會話) 的出現(xiàn)就解決了這樣的問題,Session是創(chuàng)建在服務端的,在一定的時間后,由服務端來消毀。在這段時間,客戶端與服務端的會話就會保持著,客戶端就會利用服務端上的 Session 信息來找到或操作一些數(shù)據(jù);

如何使用 Session

Java Api 只給我們一種方式來 獲取 當前會話相關(guān)的 session:

HttpSession session = request.getSession();
//或
HttpSession session = request.getSession(boolean);

設(shè)置值:

session.setAttribute("key", 值對象);

獲取值:

對象類型 obj = (對象類型)session.getAttribute("key");
//如
String name = (String)session.getAttribute("key");

刪除 session 指定屬性健:

session.removeAttribute("key");

清除所有的session,使當前 session 完全失效:

session.invalidate();

session超時周期設(shè)置

1. Tomcat 安裝位置 conf/web.xml :

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

30分種

2. Tomcat 安裝位置 conf/server.xml :

<Context path="/test" docBase="/test" 
  defaultSessionTimeOut="3600" isWARExpanded="true" 
  isWARValidated="false" isInvokerEnabled="true" 
  isWorkDirPersistent="false"/>

單位為 秒

3. Java 代碼設(shè)置:

HttpSession session = request.getSession();
session.setMaxInactiveInterval(1200);

0 分種:

其他說明:

1. session 過期情況:

1>. 客戶端瀏覽器關(guān)閉:

2>. session 會話過期;

3>. 客戶端會話調(diào)用了 .invalidate();

2. 瀏覽器關(guān)閉與session是否還在;

當客戶端瀏覽器關(guān)閉后,session 在服務端還是會存在一定時間的,只是當瀏覽器器再次打開時,就會生成一個新的 session ,瀏覽器通過生成的 sessionid 屬性來 匹配服務端的 session; 那上次的session 雖然還在,但是就訪問不到了;

3. <% @ page session="false" %> 是什么情況?:

這句話的意思是,當前不能使用 session, 但是 頁面 session 還是可以創(chuàng)建的;

4. session 在什么時候 被創(chuàng)建:

在 程序 調(diào)用 HttpServletRequest.getSession(true) 時創(chuàng)建;如果 頁面沒有使用 <%@ page session="false"%> 時,在 jsp 頁面編譯成 Servlet 時,會自動 加上 HttpSession session = HttpServletRequest.getSession(true);

總結(jié)

以上就是本文關(guān)于了解java中的session的全部內(nèi)容,希望對大家有所幫助。如有不足之處,歡迎留言指出。感謝朋友們對本站的支持!

相關(guān)文章

  • Flask接口如何返回JSON格式數(shù)據(jù)自動解析

    Flask接口如何返回JSON格式數(shù)據(jù)自動解析

    這篇文章主要介紹了Flask接口如何返回JSON格式數(shù)據(jù)自動解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-11-11
  • SSM?Mapper文件查詢出返回數(shù)據(jù)查不到個別字段的問題

    SSM?Mapper文件查詢出返回數(shù)據(jù)查不到個別字段的問題

    這篇文章主要介紹了SSM?Mapper文件查詢出返回數(shù)據(jù)查不到個別字段的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-01-01
  • MybatisPlus保存、讀取MySQL中的json字段失敗問題及解決

    MybatisPlus保存、讀取MySQL中的json字段失敗問題及解決

    這篇文章主要介紹了MybatisPlus保存、讀取MySQL中的json字段失敗問題及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • Java獲取當前時間戳案例詳解

    Java獲取當前時間戳案例詳解

    這篇文章主要介紹了Java獲取當前時間戳案例詳解,本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下
    2021-08-08
  • 解讀線程池-Executors的newSingleThreadExecutor和newFixedThreadPool(1)區(qū)別

    解讀線程池-Executors的newSingleThreadExecutor和newFixedThreadPool(1

    這篇文章主要介紹了解讀線程池-Executors的newSingleThreadExecutor和newFixedThreadPool(1)區(qū)別,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-08-08
  • 詳解maven的install的作用

    詳解maven的install的作用

    這篇文章主要介紹了詳解maven的install的作用,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-09-09
  • 在SpringBoot中該如何配置攔截器

    在SpringBoot中該如何配置攔截器

    今天給大家?guī)淼氖顷P(guān)于SpringBoot的相關(guān)知識,文章圍繞在SpringBoot中該如何配置攔截器展開,文中有非常詳細的介紹及代碼示例,需要的朋友可以參考下
    2021-06-06
  • Spring?Data?Jpa框架最佳實踐示例

    Spring?Data?Jpa框架最佳實踐示例

    這篇文章主要為大家介紹了Spring?Data?Jpa框架最佳實踐示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步早日升職加薪
    2022-02-02
  • Java利用三目運算符比較三個數(shù)字的大小

    Java利用三目運算符比較三個數(shù)字的大小

    今天小編就為大家分享一篇關(guān)于Java利用三目運算符比較三個數(shù)字的大小,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2018-12-12
  • Spring?中的InitializingBean使用示例

    Spring?中的InitializingBean使用示例

    InitializingBean?是?Spring?框架中的一個接口,用于在?Spring?容器中初始化?bean?時執(zhí)行特定的初始化邏輯,這篇文章主要介紹了Spring?中的InitializingBean使用示例,需要的朋友可以參考下
    2024-08-08

最新評論