1. 程式人生 > >講講session是怎麼工作的,session的用法?

講講session是怎麼工作的,session的用法?

6.session的用法(視訊下載) (全部書籍)
 

馬克-to-win:到現在為止,我們學會了一次單獨的請求和響應之間傳遞引數。但是如何跨越幾次請求響應之間傳遞引數呢?比如我以馬克的身份登入,這是 一次請求響應。之後買書又是一次請求響應。如何買書的時候還記得買書的人是馬克,而不是張三呢?馬克這個引數存在哪呢?這是跨越兩次訪問。Sun公司為我 們提供了HttpSession這個介面。HttpSession session = request.getSession();通過這句話,你可以得到一個與你的瀏覽器繫結的session物件,存在Tomcat裡。這 個session物件只認你這個瀏覽器,之後只要是你這個瀏覽器發出的請求,無論跨越多少次請求響應,這個session物件就對它開放,其它瀏覽器不能 訪問。通過session.setAttribute()可以往session裡面存值,session.getAttribute可以取值。問題是 session是如何識別你的瀏覽器呢?初 學者可忽略:靠Cookie或者URL改寫:如果瀏覽器支援Cookie,則使用Cookie;如果瀏覽器不支援Cookie或者Cookie功能被關 閉,則自動使用URL改寫方法。拿cookie來說(通常客戶很少見關閉cookie,即使你關了,我也可以發現,之後提醒你開啟或程式設計序重寫URL), 伺服器往客戶端寫東西時,cookie會帶上sessionid。當客戶端再次訪問伺服器時,同一path下

,會自動在html請求頭中帶上cookie資訊,伺服器可以在_COOKIE域中得取到想要的sessionid。    

有時我們在網路購物時,如果有一段時間沒有碰電腦,當我們再繼續購物時,會接到session過期的錯誤資訊。這是因為任何session物件,天生就有能過期的特性。我們可以通過類的方法改變失效時長。

詳情請見:http://www.mark-to-win.com/index.html?content=Jsp/jspUrl.html&chapter=Jsp/jsp1_web.html#SessionHowWork