java web中的三大上下文對象

javaweb中的request,session,application對象,其基本作用是充當“共享區”的角色,即數據的傳遞存放區,但其共享的範圍不盡相同,其名稱代表着共享的範圍。

093021272.jpg

爲了說明其範圍的不同,先上一張圖:

091400207.png

1、當Tomcat啓動時會爲其中的每一個應用創建一個application對象(類名:ServletContext),且每個應用有唯一的該對象存在。

2、當《客戶端1》做《app1應用》的訪問時,會爲其創造一個request對象,在一次請求過程中“如jsp1--->jspx”,request對象爲同一個。當《客戶端1》訪問jsp2或再次訪問jsp1都會有新的request對象產生,原有的request會被gc掉。

3、當《客戶端1》對《app1應用》是第一次的訪問,會有一個session對象的產生,此後《客戶端1》對《app1應用》的所有的訪問均使用同一個session對象。當《客戶端2》對《app1》訪問,也會有新的sessoin對象產生,但是其不同於《客戶端1》的session。

4、三個對象都有統一的方法:設置數據時,使用.setAttribute("key",value);取數據時,使用.getAttribute("key");

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