jsp頁面中包含檔案(筆記第13章)

來源:互聯網
上載者:User

jsp:include  在首頁面北請求期間將其他頁面的輸出包含進來(動態包含)

include指令  不同與上一條,在首頁面轉化成servlet之前將jsp代碼插入進來(靜態包含)

jsp:plugin  適用於applet

最愚蠢的方式是在多個頁面有共用部分時使用複製張貼的方式,其次採用不同伺服器提供的包含機制,最好使用上面3條可移植的方式。

在請求期間包含頁面jsp:include

 1、可以包含這些內容:HTML頁面的內容,純文字文檔內容,JSP頁面的輸出,servlet的輸出。==RequestDispatcher的include方法。

 2、文法:<jsp:include page="relative-path-to-resource" />這裡的路徑可以使用相對與首頁面的路徑(不加/),相對與應用的根目錄(加/),為了防止用戶端的非法訪問,最                              好將被包含頁面放在WEB-INF目錄。   其中可加flush屬性,指定在將那個頁麵包含進來之前是否應該清空首頁面的輸出資料流(預設false)。

 3、增加請求參數:被包含頁面可以的request對象和首頁面共用,不過可在首頁面中給北包含頁面單獨配置一些參數,文法如下:

                                        <jsp:include page="/framents/StandardHeading.jsp">

                                                  <jsp:param name="bgColor" value="Yellow" />

                                        </jsp:include>

                                      如果新增參數和用戶端提交參數重名,優先使用新增參數。

  

在頁面轉換期間包含檔案  : include指令                                                    兩個jsp頁麵包含方式比較

  jsp:include動作 include指令
包含動作的發生時間 請求期間

頁面轉化期間

包含的內容 頁面的輸出 檔案的實際內容
產生多少servlet 兩個(首頁面和北包含頁面都會有獨立的servlet) 一個(北包含檔案首先被插入到首頁面中,然後,得到的頁面北轉換成servlet)
被包含頁面是否可設定首頁面的響應前序 不可以 可以
被包含頁面是否可定義首頁面的欄位或方法 不可以 可以
被包含頁面發生更改時是否需要更新首頁面 不需要 需要
等同的servlet代碼 RequestDispatcher的include方法 沒有

相關的規範只要求首頁面什麼時候發生了改變,並動態更新,所以include指令的方法需要手動touch(在linux系統上)首頁面或者在首頁面維護一個代表更新時間的注釋,顯式讓伺服器更新,而jsp:include方法會自動檢測並更新jsp的編譯成的servlet。

 當然,includ指令,<% include file="……" %>XML相容語句是:<jsp:directive.include file="……" />。

使用jsp:forward轉寄請求效果和使用servlet的RequestDispatcher的forward方法一樣,不過這種邏輯處理一般建議放在servlet中。

                  

                  

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.