1、編譯階段:
servlet容器編譯servlet源檔案,生成servlet類。
觀察一個JSP頁面在第一次通路的時候會由servlet容器會生成.java檔案,最終編譯成.class位元組碼檔案,如果打開.java檔案檢視,就是一個servlet。
2、初始化階段:
加載與JSP對應的servlet類,建立其執行個體,并調用它的初始化方法。
3、執行階段:
調用與JSP對應的servlet執行個體的服務方法。
4、銷毀階段:
調用與JSP對應的servlet執行個體的銷毀方法,然後銷毀servlet執行個體。
如下圖所示的是servlet的生命周期和JSP非常的相似:

下面來測試一下JSP實作這些生命周期,在left.jsp頁面如下寫法:
效果如下:
然後打開工作空間的生成的java檔案:“\workspace_web_test\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\work\Catalina\localhost\webtest1\org\apache\jsp\life_jsp.java”
會發現如下結構:
參考:
http://www.runoob.com/jsp/jsp-life-cycle.html