jsp include和include的區別

2021-09-04 13:19:21 字數 1280 閱讀 9063

<%@include...> 與指令的區別

include指令:

在翻譯階段(將jsp頁面轉換成servlet的階段),include會讀入指定的頁面中的內容,並將這些內容和原來的頁面融合在一起

<%@ include file=」header.html」%>

引入的頁面可以只包含靜態內容(例如html),也可以是乙個普通的jsp頁面。主頁面和引入的頁面融和在一起(引入的頁面只是最為普通的文字進行融合,並不對動態內容求值),融合後的完整頁面再被整體的轉換為乙個servlet。

這意味著主頁和被引入的頁面共享所有的頁面作用域資料。因此,如果主頁面中宣告了乙個變數,而在某個被引入的頁面中也宣告了乙個同名的變數,那麼在翻譯階段將會造成乙個錯誤,因為組合後的頁面無法進行編譯。

include指令的乙個常見用法是引入應用程式的所有頁面都需要的公共宣告。

jsp規範建議在使用include指令引入jsp頁面時,最好使用不同的副檔名,因為它們一般都不是完整而合法的頁面,如:可以使用這些替代的副檔名:.jspf或 .jsf。

被引用頁面改變後,容器可能不會馬上產生反應。

指令用於在執行時引入另外的資源。

這個指令是在請求處理階段而不是在翻譯階段執行的。該行為並不是要引入指定頁面的實際內容,它將引入執行該引入頁面後所產生的應答,這意味著你可以指定任何能夠產生文字應答的web資源。jsp容器將通過乙個內部的函式呼叫來呼叫指定的資源。因此,這些被引入的資源可以幫助處理原來的請求,所以這些資源可以訪問請求作用域內的所有物件,以及所有的請求引數。但是要注意,它不能訪問任何頁面作用域屬性,或是在主頁面中宣告的指令碼變數。

行為和相同,另外它還可以從外部資源引入資料,比如不同的web應用程式,或者乙個ftpfuwq。

所以應該使用來代替的使用。

被引用頁面改變後,新版本會立即投入使用。

include 和行為直接的區別

語法執行時間

引入內容

<%@ include  file=」relativeuri」%>

翻譯階段

靜態文字(html、jsp),在jsp頁面被轉換為servlet之前和他融合在一起

請求處理階段

執行頁面或servlet所生成的應答文字

總結:<%@ include file%>是把引入的檔案和當前的檔案共同合斌成乙個servlet檔案進行解析。是把當前檔案和引入檔案生成兩個不同的servlet檔案,在當前檔案中在進行動態的呼叫引入的servlet檔案。

include和jsp include的區別

include file date.jsp include編譯指令是在jsp程式的轉換時期就將file屬性所指定的程式內容嵌入,然後再編譯執行 而include指令在轉換時期是不會被編譯的,只有在客戶端請求時期如果被執行到才會被動態的編譯載入 只生成乙個class檔案 多個include不能帶引數 ...

JSP,include,靜態和動態的區別

1.靜態匯入是將匯入頁面的 完全融入,兩個頁面融合成乙個整體servlet 而動態匯入則在servlet中使用include方法來引入被匯入頁面的內容。2.靜態匯入時,匯入頁面的編譯指令會起作用 而動態匯入時,不會起作用,指示插入被匯入頁面的body內容。使用例項 靜態匯入 用於匯入一些公共資源,如...

jsp include標籤使用

jsp有兩種方式使用include 作用都是將乙個頁面引入到另外乙個頁面中 include file 這是include指令 正如我們所熟知 jsp是通過被翻譯成servlet 然後被jee容器使用的,在使用include指令的時候,容器會將對應頁面包含到本頁面一起進行編譯,最終形成乙個servle...