web.xml配置詳解之listener與context-param


1. 啟動一個WEB項目的時候,容器(如:Tomcat)會去讀它的配置文件web.xml.讀兩個節點: <listener></listener> 和 <context-param></context-param>


2. 緊接着,容器創建一個ServletContext(上下文),這個WEB項目所有部分都將共享這個上下文.


3. 容器將<context-param></context-param>轉化為鍵值對,並交給ServletContext.


4. 容器創建<listener></listener>中的類實例,即創建監聽.


5. 在監聽中會有contextInitialized(ServletContextEvent args)初始化方法,在這個方法中獲得
  ServletContext = ServletContextEvent.getServletContext();
    context-param的值 = ServletContext.getInitParameter("context-param的鍵");


6. 得到這個context-param的值之后,你就可以做一些操作了.注意,這個時候你的WEB項目還沒有完全啟動完成.這個動作會比所有的Servlet都要早.
    換句話說,這個時候,你對<context-param>中的鍵值做的操作,將在你的WEB項目完全啟動之前被執行.


7. 舉例.你可能想在項目啟動之前就打開數據庫.
    那么這里就可以在<context-param>中設置數據庫的連接方式,在監聽類中初始化數據庫的連接.


8. 這個監聽是自己寫的一個類,除了初始化方法,它還有銷毀方法.用於關閉應用前釋放資源.比如說數據庫連接的關閉.

9. ContextLoaderListener監聽器的作用就是啟動Web容器時,自動裝配ApplicationContext的配置信息。因為它實現了ServletContextListener這個接口,在web.xml配置這個監聽器,啟動容器時,就會默認執行它實現的方法。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM