今天聽說了這么個對象,挺好奇的兼呵,可能是以前學習web不夠深入,于是查了下關于它的資料腊敲,學習學習击喂。
以前聽說的域對象包括request、response碰辅、session以及application懂昂。
以下信息來自:ServletContext作用功能詳解
ServletContext,是一個全局的儲存信息的空間,服務器開始没宾,其就存在凌彬,服務器關閉,其才釋放循衰。
request饿序,一個用戶可有多個;session羹蚣,一個用戶一個原探;而servletContext,所有用戶共用一個顽素。所以咽弦,為了節(jié)省空間,提高效率胁出,ServletContext中型型,要放必須的、重要的全蝶、所有用戶需要共享的線程又是安全的一些信息闹蒜。
換一種方式說吧,運行在JAVA虛擬機中的每一個Web應用程序都有一個與之相關的Servlet上下文抑淫。ServletContext對象是Web服務器中的一個已知路徑的根绷落,Servlet上下文被定位于http://localhost:8080/項目名.以 /項目名 請求路徑(稱為上下文路徑)開始的所有請求被發(fā)送到與此ServletContext關聯(lián)的Web應用程序。一個ServletContext對象表示了一個Web應用程序的上下文始苇。
Servlet上下文:Servlet上下文提供對應用程序中所有Servlet所共有的各種資源和功能的訪問砌烁。Servlet上下文API用于設置應用程序中所有Servlet共有的信息。Servlet可能需要共享他們之間的共有信息。運行于同一服務器的Servlet有時會共享資源函喉,如JSP頁面避归、文件和其他Servlet。
比如管呵,做一個購物類的網站梳毙,要從數據庫中提取物品信息,如果用session保存這些物品信息捐下,每個用戶都訪問一便數據庫顿天,效率就太低了;所以要用來Servlet上下文來保存蔑担,在服務器開始時牌废,就訪問數據庫,將物品信息存入Servlet上下文中啤握,這樣鸟缕,每個用戶只用從上下文中讀入物品信息就行了。