Servlet的開發標准來說,Servlet是有自己的小框架的,一個標准的Servlet程序要有完整的生命周期,生命周期是什麼東西呢?我們來看一下標准的Servlet開發是怎樣的。
Servlet生命周期
生命周期,是一個程序存在的周期,Servlet由於受到容器的管理,所以容器來決定生命周期。
Servlet程序是運行在服務器端的一段Java程序,其生命周期將受到WEB容器的控制,生命周期包括: 加載程序、初始化、服務、銷毀、卸載五個部分
生命周期就是如上圖所示的,它是一個程序的一個周期。
1. 加載Servlet
WEB容器負責加載Servlet,容器就是tomcat,當WEB容器啟動時或者是在第一次使用這個Servlet時,容器負責創建Servlet實例,但是用戶必須通過部署描述符(web.xml)指定Servlet的位置(Servlet所在的包.類名稱),成功加載後,WEB容器會通過反射的方式對Servlet進行實例化。
2. 初始化
當一個Servlet被實例化後,容器將調用init()方法初始化這個對象,初始化的目的是為了讓Servlet對象在處理客戶端請求前完成一些初始化的工作,如果初始化失敗,則Servlet將直接被下載掉
3.處理服務
當有請求提交時,Servlet將調用service()方法(常用的是doGet()和doPost())進行處理。當service()方法中,Servlet可以通過ServletRequest接受客戶的請求,也可以利用ServletResponse設置響應信息
4.銷毀
當WEB容器關閉或者檢測到一個Servlet要從容器中被刪除時,會自動調用destroy()方法,以便讓該實例釋放掉所占用的資源