java - 如何在tomcat啟動的時候,執行專案的初始化程序
我想大声告诉你
我想大声告诉你 2017-07-05 10:02:11
0
4
1052

在tomcat啟動的時候,控制台輸出了很多信息,信息中顯示在tomcat啟動的時候,加載了很多項目的配置文件,並且調用了項目初始化方法,但我不知道是怎麼被調用的。在那裡被調用的?是需要配置tomcat的一些東西嗎?

PS:javaweb專案

我想大声告诉你
我想大声告诉你

全部回覆(4)
洪涛

web.xml中做如下配置

<servlet>  
   <servlet-name>MyServlet</servlet-name>  
   <servlet-class>org.cai.MyServlet</servlet-class>  
   <strong><load-on-startup>0</load-on-startup></strong>  
  </servlet> 
某草草

web.xml中找找Listener

洪涛

樓主需要的是系統了解 Servlet 的生命週期。當你實作一個 Servlet 的時候,它的哪些方法會在 Web 應用程式啟動的時候被呼叫。這方面的文章太多了:

http://www.jianshu.com/p/1d50...
http://www.runoob.com/servlet...

習慣沉默

有三種辦法:

  1. 如 @treeandgrass 所說,對某個Servlet重寫init(),但前提是在web.xml中給load-on-startup設上值(或加@WebServlet註解);

  2. 對某個Filter實作init(),配在web.xml中(或加@WebFilter

    註解);
  3. 實作 ServletContextListener 接口,並實作contextInitialized(),配在web.xml中(或加@WebListener

    註解)。

這三種方法中,我最常使用最後一種(ServletContextListener)(在Web中使用Spring通常只用這種方法),因為它總是優先於Filter和Servlet執行的,而且不會跟實現具體功能的Servlet、Filter混在一起。

初始化的工作包括:
  • 執行緒池、資料庫連線池、網路連線池的初始化
  • IoC容器的裝載
  • 啟動定時器

  • 其他需要初始化的物件以上大多數初始化工作是需要在Web伺服器停止時關閉的,這些工作應寫在contextDestroyed()

    中。
🎜
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板