有三個步驟:
1.解析JSP檔案;
2.将JSP檔案轉化為servlet;
3.編譯servlet;
這裡,首先判斷是不是第一次請求,如果是的話,也就是說JSP還沒有被編譯過,JSP引擎就把相應的JSP檔案編譯成servlet,生成位元組碼檔案,并調用jspInit();
如果不是第一次請求,說明已經有了位元組碼檔案,那麼就開始解析執行,調用jspServive()。
jspService()方法被調用來處理用戶端的請求,對于每一個請求,JSP引擎将建立一個新的線程來處理請求。
如果有多個用戶端同時請求JSP檔案,則JSP引擎将會建立多個線程,每個用戶端對應一個線程。同時,servlet始終存在記憶體中,是以相應很快。