pageContext,Request,Session,servletContext,類變量,局部變量六個范圍的區(qū)別


馬克-to-win:
1) Request: 保存的鍵值僅在同一個request范圍中可以取回來。它的范圍比Session和servletContext小,缺點是;因范圍小無法取,比如訪問了兩次,第二次無法取回第一次的,就只能想辦法,比如用Session。優(yōu)點:和Session和servletContext相比,用完就仍,省服務(wù)器內(nèi)存。馬克- to-win:馬克 java社區(qū):防盜版實名手機尾號: 73203。
2) Session: 與每一個用戶瀏覽器相對應(yīng)。從Session第一次創(chuàng)建直到關(guān)閉,數(shù)據(jù)都一直保存在服務(wù)器內(nèi)存,所以客戶可以一直訪問,不用每次都去數(shù)據(jù)庫抓取,提高了性能。缺點:每個客戶的session不能像servletContext那樣共享,可能造成大量重復(fù)數(shù)據(jù);另外session技術(shù)建立在cookie和 url重寫的基礎(chǔ)上。為了讓服務(wù)器能識別每一個用戶瀏覽器,在來往過程中,需帶上Session ID的信息,這樣會用掉一點點網(wǎng)絡(luò)帶寬。當(dāng)有很多用戶訪問服務(wù)器時,這是一筆不小的開銷。
3)servletContext:   你的web應(yīng)用從啟動到關(guān)閉,這個對象一直有效。所有范圍中,它最大。保存的數(shù)據(jù)可以被所有用戶所有servlet訪問。(servletContext和servlet的類變量的區(qū)別就是:servlet的類變量只能被本身這個servlet訪問,不能被其它servlet訪問。)優(yōu)點:少訪問數(shù)據(jù)庫。缺點:不像Session一樣私密。