java中session的作用_java中session的工作原理是什么?和Cookies有何区别?
現(xiàn)在大家學(xué)習(xí)的東西和以前大不相同了,越來越多的人傾向于去學(xué)習(xí)高新技術(shù)以獲得更好的發(fā)展。java是很多人的第一選擇。java中的知識還是很多的,今天就來為大家介紹一下。
首先來說一下java中session的工作原理是什么?
session的工作原理是客戶端登錄完成之后,服務(wù)器會創(chuàng)建對應(yīng)的session,session創(chuàng)建完之后,會把session的id發(fā)送給客戶端,客戶端再存儲到瀏覽器中。這樣客戶端每次訪問服務(wù)器時,都會帶著sessionid,服務(wù)器拿到sessionid之后,在內(nèi)存找到與之對應(yīng)的session這樣就可以正常工作了。
然后簡述一下,Cookies和session有什么區(qū)別?
Cookie和Session都是客戶端與服務(wù)器之間保持狀態(tài)的解決方案
一、存儲的位置不同,cookie:存放在客戶端,session:存放在服務(wù)端。Session存儲的數(shù)據(jù)比較安全
二、存儲的數(shù)據(jù)類型不同
兩者都是key-value的結(jié)構(gòu),但針對value的類型是有差異的
cookie:value只能是字符串類型,session:value是Object類型
三、存儲的數(shù)據(jù)大小限制不同
cookie:大小受瀏覽器的限制,很多是是4K的大小, session:理論上受當前內(nèi)存的限制,
四、生命周期的控制
cookie的生命周期當瀏覽器關(guān)閉的時候,就消亡了
(1)cookie的生命周期是累計的,從創(chuàng)建時,就開始計時,20分鐘后,cookie生命周期結(jié)束,
(2)session的生命周期是間隔的,從創(chuàng)建時,開始計時如在20分鐘,沒有訪問session,那么session生命周期被銷毀
最后為大家補充一下,一次完整的HTTP請求過程,如下所示:
域名解析-->發(fā)起TCP的3次握手-->建立TCP連接后發(fā)起http請求-->服務(wù)器響應(yīng)http請求,瀏覽器得到html代碼-->瀏覽器解析html代碼,并請求html代碼中的資源(如js、css、圖片等)-->瀏覽器對頁面進行渲染呈現(xiàn)給用戶。
以上就是關(guān)于java中session的工作原理是什么以及它和Cookies有何區(qū)別的主要內(nèi)容了。具體的知識還是比較好理解的。如果你對java知識感興趣,想要了解更多java基礎(chǔ)知識,敬請關(guān)注奇Q工具網(wǎng)。
推薦閱讀:
總結(jié)
以上是生活随笔為你收集整理的java中session的作用_java中session的工作原理是什么?和Cookies有何区别?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python爬取网站数据步骤_pytho
- 下一篇: java程序员面试怎么难为面试官_Jav