Web伺服器需要一個JSP引擎,即一個處理JSP頁面的容器(類似於:Tomcat和Jetty)。 JSP容器負責攔截JSP頁面的請求。本教學使用內建JSP容器的Apache Tomcat來支援JSP頁面的開發。
JSP容器與Web伺服器配合使用以提供執行時環境和JSP需要的其他服務。它知道如何解釋作為JSP一部分的特殊元素。
下面的架構圖顯示了JSP容器和JSP檔案在Web應用程式中的位置。
以下步驟說明Web伺服器如何使用JSP建立Web頁面 -
.jsp
(而不是.html
結尾)的URL或JSP頁面完成。println()
語句,並將所有JSP元素轉換為Java程式碼。此程式碼實現頁面的相應動態行為。通常,JSP引擎將檢查JSP檔案的servlet是否已存在,並且JSP上的修改日期是否比servlet更舊。 如果JSP早於其生成的servlet,則JSP容器將會認為(假定)JSP尚未更改,生成的servlet仍然與JSP的內容相匹配,從而不必重新生成。這使得該過程比其他指令碼語言(如PHP)更加有效,因此更快。
所以在某種程度上,JSP頁面實際上只是另一種編寫servlet的方式。除了編譯階段,JSP頁面的處理方式與一般的servlet完全相同。