Web.xml配置詳解之context-param

<context-param>  
<param-name>contextConfigLocation</param-name>  
<param-value>contextConfigLocationValue></param-value>  
</context-param>

做用:該元素用來聲明應用範圍(整個WEB項目)內的上下文初始化參數。web

param-name 設定上下文的參數名稱。必須是惟一名稱數據庫

param-value 設定的參數名稱的值code

  • 初始化過程:
    1. 在啓動Web項目時,容器(好比Tomcat)會讀web.xml配置文件中的兩個節點<listener>和<contex-param>。
    2. 接着容器會建立一個ServletContext(上下文),應用範圍內即整個WEB項目都能使用這個上下文。
    3. 接着容器會將讀取到<context-param>轉化爲鍵值對,並交給ServletContext。
    4. 容器建立<listener></listener>中的類實例,即建立監聽(備註:listener定義的類能夠是自定義的類但必須須要繼承ServletContextListener)。
    5. 在監聽的類中會有一個contextInitialized(ServletContextEvent event)初始化方法,在這個方法中能夠經過event.getServletContext().getInitParameter("contextConfigLocation") 來獲得context-param 設定的值。在這個類中還必須有一個contextDestroyed(ServletContextEvent event) 銷燬方法.用於關閉應用前釋放資源,好比說數據庫鏈接的關閉。
    6. 獲得這個context-param的值以後,你就能夠作一些操做了.注意,這個時候你的WEB項目尚未徹底啓動完成.這個動做會比全部的Servlet都要早。

由上面的初始化過程可知容器對於web.xml的加載過程是context-param >> listener  >> fileter  >> servletxml

  •  如何使用
  1. 頁面中

    ${initParam.contextConfigLocation}繼承

  2. Servlet中
    String paramValue=getServletContext().getInitParameter("contextConfigLocation")
相關文章
相關標籤/搜索