1. 首先先介紹下,jsp機制:
servlet容器,先將jsp轉化成servlet,然後編譯成.class檔案,放置容器緩衝區【tomcat的work目錄下】。
每次呼叫jsp時,伺服器會讀取編譯好的servler.class,處理jsp的請求。
2.<%@ include file="page.jsp"%>
在servlet容器轉化jsp為servlet時,將引入的jsp原始碼全部新增到當前jsp,一併轉化成乙個servlet,然後編譯。
【可以理解為整合乙個servlet,一起編譯,一次執行】
3.
傳送請求給當前jsp,servlet呼叫當前jsp servlet編譯後檔案,到引用位置,呼叫編譯後的page.jsp的servlet。class檔案。【可以理解為,各自單獨編譯,互相呼叫編譯的檔案】
總結:以下是對include 兩種用法的區別,主要有兩個方面的不同:
執行時間上:
<%@ include file=」relativeuri」%> 是在翻譯階段執行
<jsp:include page=」relativeuri」 flush=」true」 /> 在請求處理階段執行.
引入內容的不同:
<%@ include file=」relativeuri」%>引入靜態文字(html,jsp),在jsp頁面被轉化成servlet之前和它融和到一起.
<jsp:include page=」relativeuri」 flush=」true」 />引入執行頁面或servlet所生成的應答文字.
另外在兩種用法中file和page屬性都被解釋為乙個相對的uri.如果它以斜槓開頭,那麼它就是乙個環境相關的路徑.將根據賦給應用程式的uri的字首進行解釋,如果它不是以斜槓開頭,那麼就是頁面相關的路徑,就根據引入這個檔案的頁面所在的路徑進行解釋。
WPF中靜態引用資源與動態引用資源的區別
wpf中引用資源分為靜態引用與動態引用,兩者的區別在 呢?我們通過乙個小的例子來理解。點選 update 按鈕,第2個按鈕的文字會變成 更上一層樓 而第1個按鈕的文字沒有變化。原因是第1個按鈕文字用的是靜態引用資源,而第2個按鈕文字用的是動態引用資源。前台 xmlns x xmlns sys clr...
指標引用和引用指標的區別
c 在傳參的過程中,指標 和指標引用 是有區別的。雖然,我們往往可以通過傳指標然後通過間址訪問來修改指標所指向物件的值,同樣,通過引用也可以直接修改物件的值。但是,當傳指標的時候有乙個問題,就是,我們雖然可以通過指標來修改指標所指向物件的值,但是我們沒有不能直接修改指標的內容 也就是指標變數存放的位...
JSP靜態指令和動態指令的區別
靜態指令和動態指令的區別 include file date.jsp include 編譯指令是在 jsp 程式的轉換時期就將 file 屬性所指定的程式內容嵌入,然後再編譯執行 而 include 指令在轉換時期是不會被編譯的,只有在客戶端請求時期如果被執行到才會被動態的編譯載入 只生成乙個 cl...