Servlet生命週期(學習筆記)
阿新 • • 發佈:2018-12-15
關於Servlet生命週期有三個重要的方法:
1、public void init(ServletConfig servletConfig) throws ServletException
init方法在Servlet物件被建立時由Tomcat 核心呼叫執行,而且一個servlet物件只會執行一次init方法
Servlet物件建立時機:
可以是在瀏覽器第一次訪問servlet時被建立, 此時應該設定 web.xml 中 的 <servlet></servlet>標籤中設定 <load-on-startup></load-on-startup> 標籤, 在內容中輸入負數,則會在瀏覽器第一次訪問servlet時建立servlet物件,預設情況是 -1
也可以是在 Tomcat伺服器啟動時建立 Servlet物件, 此時應該設定 上面標籤中的數字為非負數
因為一個servlet物件只能執行一次init方法, 所以, Servlet是單例物件, 那麼就會存在一個併發訪問對物件資料進行修改和訪問時的一個併發問題, 那麼可以將不想被共享的成員放到 service 方法中, 這樣每一次訪問都會建立一個新的成員副本
2、public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException
在servlet物件宣告週期中, 每一次使用者通過瀏覽器訪問servlet時, 都會被呼叫的方法,並且每次請求都會被呼叫一次
3、public void destroy():
在servlet物件將要被銷燬之前,會執行這個方法