一、web應(yīng)用環(huán)境
1.ServletContext
對于一個web應(yīng)用,其部署在web容器(比如:tomcat)中,web容器提供其一個全局的上下文環(huán)境,這個上下文就是ServletContext,它由web容器負(fù)責(zé)初始化,其為后面的spring容器提供宿主環(huán)境。
ServletContext是一個全局的儲存信息的空間,服務(wù)器開始,其就存在,服務(wù)器關(guān)閉,其才釋放。ServletContext提供對應(yīng)用程序中所有Servlet所共有的各種資源和功能的訪問。Servlet上下文API用于設(shè)置應(yīng)用程序中所有Servlet共有的信息,Servlet可能需要共享他們之間的共有信息。運(yùn)行于同一服務(wù)器的Servlet有時會共享資源,如JSP頁面、文件和其它Servlet。request,一個用戶可有多個;session,一個用戶一個;而servletContext在整個web應(yīng)用中只有一個,所有用戶也只共用一個。所以,為了節(jié)省空間,提高效率,ServletContext中,要放必須的、重要的、所有用戶需要共享的線程又是安全的一些信息。
換一種方式說吧,運(yùn)行在Java虛擬機(jī)中的每一個Web應(yīng)用程序都有一個與之相關(guān)的Servlet上下文。ServletContext對象是Web服務(wù)器中的一個已知路徑的根,Servlet上下文被定位于http://localhost:8080/項(xiàng)目名. 以 /項(xiàng)目名 請求路徑(稱為上下文路徑)開始的所有請求被發(fā)送到與此ServletContext關(guān)聯(lián)的Web應(yīng)用程序。一個ServletContext對象表示了一個Web應(yīng)用程序的上下文。
舉例:做一個購物類的網(wǎng)站,要從數(shù)據(jù)庫中提取物品信息,如果用ses