Servlet的兩個方法(ServletConfig,ServletContext)

ServletContext

【ServletContext的5大作用】

1.獲取web的上下文路徑

  String getContextPath();

2.獲取全局的參數

  String getInitParameter(String name);

  Enumeration getInitParameterNames();

3.和域對象相關的

  void setAttribute(String name,Onject object);

  Object getAttribute(String name);

  void removeAttribute(String name);

  域對象(域對象就是在不同資源之前來共享數據,保存數據,獲取數據)

  ServletContext是我們學習的第一個域對象(Servlet共有三個域對象ServletContext、HttpServletRequest、HttpSession)

4. 請求轉發的

  RequestDispatcher getRequestDispatcher(String path);

  在Servlet跳轉頁面:

  4.1請求重定向(你找我借錢,我沒有,你自己去找他借錢)

    1.地址欄會改變,變成重定向到的地址

    2.可以跳轉到項目內的資源,也可以跳轉項目外的資源

    3.瀏覽器向服務器發出兩次請求,那麼不能使用請求來作爲域對象來共享數據。

  4.2請求轉發(你找我借錢,我沒有,我幫你去向他借錢)

    1.地址欄不會改變

    2.只能跳轉到項目內的資源,不能跳轉項目外的資源。

    3.瀏覽器向服務器發出一次請求,那麼可以使用請求作爲域對象共享數據。

5.讀取web項目的資源文件

  String getRealPath(String path);

  InputStream getResourceAsStream(String path);

  URL getResource(String path);

ServletConfig

在Servlet的配置文件中,可以使用一個或多個<init-param>標籤爲servlet配置一些初始化參數。

當servlet配置了初始化參數後,web容器在創建servlet實例對象時,會自動將這些初始化參數封裝到ServletConfig對象中,並在調用servlet的init方法時,將ServletConfig對象傳遞給servlet。進而,程序員通過ServletConfig對象就可以得到當前servlet的初始化參數信息。

閱讀ServletConfig API,並舉例說明該對象的作用:
獲得字符集編碼
獲得數據庫連接信息
獲得配置文件,查看struts案例的web.xml文件

WEB容器在啓動時,它會爲每個WEB應用程序都創建一個對應的ServletContext對象,它代表當前web應用。

ServletConfig對象中維護了ServletContext對象的引用,開發人員在編寫servlet時,可以通過ServletConfig.getServletContext方法獲得ServletContext對象。

由於一個WEB應用中的所有Servlet共享同一個ServletContext對象,因此Servlet對象之間可以通過ServletContext對象來實現通訊。ServletContext對象通常也被稱之爲context對象。

查看ServletContext API文檔,瞭解ServletContext對象的功能。

ServletContext應用

多個Servlet通過ServletContext對象實現數據共享。

獲取WEB應用的初始化參數。

實現Servlet的轉發。

利用ServletContext對象讀取資源文件。
得到文件路徑
讀取資源文件的三種方式
.properties文件(屬性文件)


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