JavaWeb中四大域對象的作用范圍


JavaWeb的四大作用域為:PageContextServletRequestSessionServletContext

 

PageContext域:作用范圍是整個JSP頁面,是四大作用域中最小的一個;生命周期是當對JSP的請求時開始,當響應結束時銷毀。

 

ServletRequest域:作用范圍是整個請求鏈(請求轉發也存在);生命周期是在service方法調用前由服務器創建,傳入service方法。整個請求結束,request生命結束。

 

Session域:作用范圍是一次會話。生命周期是在第一次調用request.getSession()方法時,服務器會檢查是否已經有對應的session,如果沒有就在內存中創建一個session並返回。當一段時間內session沒有被使用(默認為30分鍾),則服務器會銷毀該session。如果服務器非正常關閉(強行關閉),沒有到期的session也會跟着銷毀。如果調用session提供的invalidate() ,可以立即銷毀session。

注意:服務器正常關閉,再啟動,Session對象會進行鈍化和活化操作。同時如果服務器鈍化的時間在session 默認銷毀時間之內,則活化后session還是存在的。否則Session不存在。  如果JavaBean 數據在session鈍化時,沒有實現Serializable 則當Session活化時,會消失。

 

ServletContext域:作用范圍是整個Web應用。當Web應用被加載進容器時創建代表整個web應用的ServletContext對象,當服務器關閉或Web應用被移除時,ServletContext對象跟着銷毀。

 

作用域從小到大為:PageContext(jsp頁面),ServletRequest(一次請求),Session(一次會話),ServletContext(整個web應用)。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM