JSP 與 JSPF 的差異

JSP (Java Server Page):是完整程式碼
JSPF (Java Server Page Fragment):只是程式碼片段。讓那些重複使用的程式碼分離出來,便於維護管理。

但其實要分離的檔案一樣可以叫 JSP,所以不太需要使用這個副檔名。因為還要做額外的設定,更加麻煩。

Tomcat 未編譯 JSPF 檔

要讓 jspf 也被編譯,需要在 web.xml 設定

<servlet-mapping>
    <servlet-name>jsp</servlet-name>
    <url-pattern>*.jspf</url-pattern>
</servlet-mapping>

<%@include> 與 <jsp:include> 的差異

<%@include file="xxx.jspf"%>

是編譯階段,將指定檔案包含進來,融合後轉為一個 servlet

<jsp:include page="xxx.jspf" flush="true"></jsp:include>

是靜態包含,不會被編譯
分別為兩個 servlet,主頁面處理請求時,動態調用指定的資源