ServletContext和ServletConfig

什麼是ServletContext?

ServletContext,Servlet上下文。每一個ServletContext代表一個Web應用的環境,serveltContext對象內部封裝的是Web應用信息,每一個Web應用只有一個ServletContext對象,即ServletContext是一個單實例的對象

ServletContext的生命週期是當Web應用被加載的時候創建,當Web應用卸載項目(正常關閉)時銷燬。另外ServletContext是一個接口,它的實現類是由Tomcat創建的。

作用

  • 獲取全局的初始化參數

全局的初始化參數是配置在Web.xml的context-param標籤中的,因此一些初始化參數是可以配置在這裏面的,獲取的時候是先通過ServletConfig對象獲取到ServletContext對象,然後調用context的getInitParameter方法。

  • 獲取Web應用的任何資源路徑

任何文件的資源路徑都可以獲取,通過ServletContext接口中的getRealPath(String path)根據資源名稱獲取到資源的絕對路徑。

 

  • 域對象

什麼是域對象?域對象就是指存放數據的區域,ServletContext域對象作用範圍是整個Web應用,整個Web應用都可以任意存儲數據。因此所有的Servlet都共享一個ServletContext。

ServletConfig

在運行Servlet程序時,可能需要一些輔助信息,例如,文件使用的編碼、使用Servlet程序的共享信息等,這些信息可以在Web.xml文件中使用一個或多個<init-param>元素進行配置,當Tomcat 初始化一個Servlet時,會將該Servlet的配置信息封裝到ServletConfig對象中,此時可以通過init(ServeltConfig config)方法將ServletConfig對象傳遞給Servlet。

servletConfig的作用包括三點:1)獲得Servlet的初始化參數。2)獲得Servlet的信息。3)獲得ServletContext對象的引用。

獲取ServletContext對象的引用是ServletConfig的常用地方。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章