<jsp:include>動態包含與靜態包含
動態INCLUDE
用jsp:include動作實現 <jsp:include page="included.jsp" flush="true" />它總是會檢查所含檔案中的變化,適合用於包含動態網頁面,並且可以帶參數。
(這裡你必須使用flush="true",你不能使用false值.預設值為false )
靜態INCLUDE
用include偽碼實現,定不會檢查所含檔案的變化,適用於包含靜態頁面<%@ include file="included.htm" %>
===================================================================
1. 靜態include的結果是把其他jsp引入當前jsp,兩者合為一體
動態include的結構是兩者獨立,直到輸出時才合并( 看看jsp產生的java檔案就可以知道了)
2.正是因為這樣,動態include的jsp檔案獨立性很強,是一個單獨的jsp檔案,需要使用的對象,版面設定,都必須有自己建立,當然,還好它和include它的頁面的request範圍是一致的.
而靜態include純粹是把代碼寫在外面的一種共用方法,所有的變數都是可以和include它的主檔案共用,兩者高度緊密結合,不能有變數同名的衝突.而版面設定也可以借用主檔案的.
本文來自: 指令碼之家(www.jb51.net) 詳細出處參考:http://www.jb51.net/article/13159.htm
include指令是靜態引入的;而include動作是動態引入的。
靜態與動態include與頁面內容無關。
與<%@include...%>不同的是,jsp:include 可以向被包含的頁傳遞參數,但,如果傳遞參數的話,被包含的頁必須是JSP頁面。
例如:向被包含的頁included2.jsp傳遞參數:
<jsp:include page="included2.jsp" flush="true">
<jsp:param name="ref1" value="AAA"/>
<jsp:param name="ref2" value="BBB"/>
</jsp:include>
page屬性: 相對路徑指明被包含的檔案
flush屬性: 必須用true ,表示頁面可重新整理。
可以用jsp:param向被包含的動態網頁即JSP頁傳遞參數(而include指令則不可以),參數以”參數名-值”對的形式傳遞,被包含的頁使用request.getParameter(“參數名稱”)可以擷取相應參數的值
JSP中動態INCLUDE與靜態INCLUDE的區別?動態INCLUDE用jsp:include動作實現它總是會檢查所含檔案中的變化,適合用於包含動態網頁面,並且可以帶參數。靜態INCLUDE用include偽碼實現,定不會檢查所含檔案的變化,適用於包含靜態頁面
轉載連結:http://blog.sina.com.cn/s/blog_5bba80460100cidt.html