JSP頁(yè)面的動(dòng)態(tài)包含和靜態(tài)包含示例及介紹
一、靜態(tài)包含
本文介紹JSP靜態(tài)包含語(yǔ)句,即使用JSP的include指令來完成的包含操作。
JSP中,有兩種包含其它文件的方式,一種是靜態(tài)包含,一種是動(dòng)態(tài)包含。本文介紹其中的靜態(tài)包含。
所謂靜態(tài)包含,跟ASP中的包含是一樣的效果,即將所有包含的文件,先靜態(tài)的包含進(jìn)來,組成一個(gè)大的JSP文件,然后再經(jīng)過編譯器統(tǒng)一編譯,生成HTML代碼。
JSP靜態(tài)包含的語(yǔ)句為:
<%@ include file="file.jsp" %>
這里的file.jsp就是要包含的文件,這里可以使用目錄進(jìn)行包含,可以是相對(duì)目錄,可以是絕對(duì)路徑。
JSP靜態(tài)包含時(shí),需要注意編碼的問題。
在JSP文件中,我們必須指定頁(yè)面的contentType為GBK、GB2312、UTF-8等才能在文檔里面輸入中文。如下:
<%@ page language="java" contentType="text/html; charset=GBK" pageEncoding="GBK" %>
但這里務(wù)必注意,當(dāng)這個(gè)文件被靜態(tài)包含時(shí),它的編碼如果跟包含它的文件的編碼有一點(diǎn)點(diǎn)不一致,都會(huì)報(bào)錯(cuò)。所以,如果要靜態(tài)包含,一定要把這兩個(gè)文件的編碼這一句(即contentType)確保完全一致。
二、動(dòng)態(tài)包含
在ASP中沒有動(dòng)態(tài)包含這一說法,所有的包含都是靜態(tài)包含。而JSP中,動(dòng)態(tài)包含和靜態(tài)包含有很大的區(qū)別。
本文來說一說JSP中的動(dòng)態(tài)包含。
JSP中的動(dòng)態(tài)包含不同于靜態(tài)包含,它是在將各個(gè)JSP頁(yè)面分別編譯執(zhí)行后,將大家執(zhí)行的HTML結(jié)果,組合到一起向客戶端瀏覽器輸出的一種方式。
什么意思呢?
比如a.jsp,包含了b.jsp和c.jsp。a.jsp是無(wú)法共享b.jsp和c.jsp中設(shè)置的變量和函數(shù)的,也無(wú)法共享其邏輯結(jié)構(gòu)。各自是分別編譯并執(zhí)行的。比如a執(zhí)行后輸出"a",b.jsp執(zhí)行后輸出"b",c.jsp執(zhí)行后輸出"c",那么最終將輸出"abc"。
JSP動(dòng)態(tài)包含的語(yǔ)法:
JSP動(dòng)態(tài)包含不是使用的一個(gè)指令,而是使用的一個(gè)標(biāo)簽,如下:
或者:
<jsp:include page="file.jsp">
<jsp:param name="p1" vlaue="v1" />
</jsp:include>
上面兩種語(yǔ)句并沒有本質(zhì)的區(qū)別,只是前者是一個(gè)簡(jiǎn)單的包含,而后者可以給被包含頁(yè)面?zhèn)鬟f參數(shù)而已。參數(shù)傳遞到被包含頁(yè)面時(shí),可以使用request.getParameter("參數(shù)名")的方式來獲取。
大家知道在asp中,如果使用include包含語(yǔ)句,那么被包含的文件上是不能帶參數(shù)的。所以,在asp中的包含是跟jsp中的靜態(tài)包含一樣的。
相關(guān)文章
Struts1之url截取_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理
這篇文章主要介紹了Struts1之url截取_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理的相關(guān)資料,需要的朋友可以參考下2017-09-09詳解struts2的token機(jī)制和cookie來防止表單重復(fù)提交
這篇文章主要介紹了詳解struts2的token機(jī)制和cookie來防止表單重復(fù)提交的相關(guān)資料,需要的朋友可以參考下2017-06-06jsp通過自定義標(biāo)簽庫(kù)實(shí)現(xiàn)數(shù)據(jù)列表顯示的方法
這篇文章主要介紹了jsp通過自定義標(biāo)簽庫(kù)實(shí)現(xiàn)數(shù)據(jù)列表顯示的方法,較為詳細(xì)的分析了jsp自定義標(biāo)簽的定義、功能實(shí)現(xiàn)與使用技巧,并附帶了完整的實(shí)例代碼供讀者下載參考,需要的朋友可以參考下2015-10-10基于JSP的RSS閱讀器的設(shè)計(jì)與實(shí)現(xiàn)方法(推薦)
下面小編就為大家?guī)硪黄贘SP的RSS閱讀器的設(shè)計(jì)與實(shí)現(xiàn)方法(推薦)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-07-07如何使用JSP訪問MySQL數(shù)據(jù)庫(kù)
如何使用JSP訪問MySQL數(shù)據(jù)庫(kù)...2006-10-10response.setContentType()的作用及MIME參數(shù)詳解
response.setContentType(MIME)的作用是使客戶端瀏覽器,區(qū)分不同種類的數(shù)據(jù),并根據(jù)不同的MIME調(diào)用瀏覽器內(nèi)不同的程序嵌入模塊來處理相應(yīng)的數(shù)據(jù),本文詳細(xì)介紹,需要了解的朋友可以參考下2012-12-12