JavaWeb中四大域對象的作用範圍__JavaWeb

來源:互聯網
上載者:User

JavaWeb的四大範圍為:PageContextServletRequestHttpSessionServletContext


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


ServletRequest域:作用範圍是整個請求鏈(請求轉寄也存在);生命週期是在service方法調用前由伺服器建立,傳入service方法。整個請求結束,request生命結束。


HttpSession域:作用範圍是一次會話。生命週期是在第一次調用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(一次請求),HttpSession(一次會話),ServletContext(整個web應用)。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.