session_VS_Cookie

Session-VS-Cookie(會話管理)


一、會話:

瀏覽器和服務器交互的一次過程,會話內容可以保存在服務端(內存),也可以保存在客戶端(磁盤)

會話(Session)跟蹤是Web程序中常用的技術,用來跟蹤用戶的整個會話


常用的會話跟蹤技術是Cookie與Session。Cookie通過在客戶端記錄信息確定用戶身份Session通過在服務器端

記錄信息確定用戶身份

二、Session:

JSP利用servlet提供的HttpSession接口來識別一個用戶,存儲這個用戶的所有訪問信息。默認情況下,JSP允許會話跟蹤,一個新的HttpSession對象

將會自動地爲新的客戶端實例化。


Session保存原理:

每次打開瀏覽器訪問jsp時都會產生一個新的session對象。此時利用session保存數據的作用範圍是從瀏覽器打開到關閉,如果關閉瀏覽器,

該session對象還會存在於服務器端,一直等到session超時,服務器纔會把該session給刪除,所以一般情況下,使用session時儘量只保存簡單的少量

的數據,否則容易造成內存溢出。


應該設置session的存活時間:(默認存活時間是1800)
方式一:session.setMaxInactiveInterval()
方式二:在web.xml中設置
     
   <!-- 設置session超時時間 ,單位爲分鐘 -->
 
<session-config>
 
<session-timeout>5</session-timeout>
  </session-config>


Session可以用於做用戶登錄和退出,如下:








三、cookies:

網絡服務器可以指定一個唯一的session ID作爲cookie來代表每個客戶端,用來識別這個客戶端接下來的請求。

不屬於jsp內置愛對象,可以將會話信息保存在客戶端磁盤裏面

Cookies的使用步驟:

1、實例化Cookie對象,通過構造方法以鍵值對的形式保存會話信息


2、設置cookie的存活時間

3、利用response對象將cookie對象寫入到客戶端磁盤中


4、利用request對象讀取客戶端磁盤上cookie對象

四、session和cookie的區別:

1、Session保存數據在服務端,cookie保存數據在客戶端

2、cookie對象中存儲着session的id

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章