今天聽說了這么個對象,挺好奇的,可能是以前學習web不夠深入,于是查了下關(guān)于它的資料,學習學習。
以前聽說的域?qū)ο蟀╮equest、response、session以及application。
以下信息來自:ServletContext作用功能詳解
ServletContext,是一個全局的儲存信息的空間,服務(wù)器開始,其就存在,服務(wù)器關(guān)閉,其才釋放。
request,一個用戶可有多個;session,一個用戶一個;而servletContext,所有用戶共用一個。所以,為了節(jié)省空間,提高效率,ServletContext中,要放必須的、重要的、所有用戶需要共享的線程又是安全的一些信息。
換一種方式說吧,運行在JAVA虛擬機中的每一個Web應(yīng)用程序都有一個與之相關(guān)的Servlet上下文。ServletContext對象是Web服務(wù)器中的一個已知路徑的根,Servlet上下文被定位于http://localhost:8080/項目名.以 /項目名 請求路徑(稱為上下文路徑)開始的所有請求被發(fā)送到與此ServletContext關(guān)聯(lián)的Web應(yīng)用程序。一個ServletContext對象表示了一個Web應(yīng)用程序的上下文。
Servlet上下文:Servlet上下文提供對應(yīng)用程序中所有Servlet所共有的各種資源和功能的訪問。Servlet上下文API用于設(shè)置應(yīng)用程序中所有Servlet共有的信息。Servlet可能需要共享他們之間的共有信息。運行于同一服務(wù)器的Servlet有時會共享資源,如JSP頁面、文件和其他Servlet。
比如,做一個購物類的網(wǎng)站,要從數(shù)據(jù)庫中提取物品信息,如果用session保存這些物品信息,每個用戶都訪問一便數(shù)據(jù)庫,效率就太低了;所以要用來Servlet上下文來保存,在服務(wù)器開始時,就訪問數(shù)據(jù)庫,將物品信息存入Servlet上下文中,這樣,每個用戶只用從上下文中讀入物品信息就行了。