JSP技術(shù)-6標(biāo)準(zhǔn)標(biāo)簽庫_第1頁
JSP技術(shù)-6標(biāo)準(zhǔn)標(biāo)簽庫_第2頁
JSP技術(shù)-6標(biāo)準(zhǔn)標(biāo)簽庫_第3頁
JSP技術(shù)-6標(biāo)準(zhǔn)標(biāo)簽庫_第4頁
JSP技術(shù)-6標(biāo)準(zhǔn)標(biāo)簽庫_第5頁
已閱讀5頁,還剩17頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

JavaWeb編程

JSP技術(shù)-標(biāo)簽庫JSTL1.回憶EL(ExpressionLanguage)表示表達(dá)式語言JSP標(biāo)準(zhǔn)標(biāo)簽庫專家組和JSP2.0專家組共同開發(fā)了JSPELJSP表達(dá)式語言用于訪問存儲(chǔ)于JavaBean中的數(shù)據(jù)JSP表達(dá)式語言可以用于任何靜態(tài)文本和標(biāo)準(zhǔn)標(biāo)簽或自定義標(biāo)簽2.目標(biāo)理解核心標(biāo)簽庫

自定義標(biāo)簽3.JSTLJavaServerPages標(biāo)準(zhǔn)標(biāo)簽庫(JSTL)包含的各種標(biāo)簽可用于JSP頁面中JSTL的優(yōu)點(diǎn)提供一組標(biāo)準(zhǔn)標(biāo)簽

可用于編寫各種動(dòng)態(tài)JSP頁面用于訪問數(shù)據(jù)庫、有條件地執(zhí)行代碼和支持國際化4.標(biāo)簽庫目前支持四種標(biāo)簽標(biāo)簽URI前綴示例Core/jstl/corec<c:tagname...>XMLprocessing/jstl/xmlx<x:tagname...>I18N/jstl/fmtFmt<fmt:tagname...>Database(SQL)/jstl/sqlsql<sql:tagname...>Core支持JSP中的一些根本的操作;XMLprocessing支持XML文檔的處理;I18Ncapableformatting支持對(duì)JSP頁面的國際化;Databaseaccess(SQL)支持JSP對(duì)數(shù)據(jù)庫的操作5.核心標(biāo)簽庫核心標(biāo)簽庫包含以下標(biāo)簽:核心標(biāo)簽庫通用標(biāo)簽條件標(biāo)簽迭代標(biāo)簽6.JSTL1.1與1.0比較2.4及以后寫成(JSTL1.1)

<%@taglibprefix="c"uri="://java.sun/jsp/jstl/core"%>

寫成

2.3及以前(JSTL1.0)

<%@taglibprefix="c"uri="://java.sun/jstl/core"%>7.通用標(biāo)簽3-1通用標(biāo)簽庫用于操作JSP頁面內(nèi)的作用域變量通用標(biāo)簽庫中的標(biāo)簽:通用標(biāo)簽setremoveout8.<c:out>

庫:Core(核心庫)URI:://java.sun/jsp/jstl/core前綴:c描述:<c:out>標(biāo)簽是一個(gè)最常用的標(biāo)簽,用于在JSP中顯示數(shù)據(jù)。它的作用是用來替代通過JSP內(nèi)置對(duì)象out或者<%=%>表達(dá)式來輸出對(duì)象的值。9.<c:out>語法沒有Body時(shí)的語法<c:outvalue=〞value〞[default=〞defaultValue〞]/>

有Body時(shí)的語法<c:outvalue=〞value〞>這里是Body局部</c:out>假假設(shè)value為null,會(huì)顯示default的值;假假設(shè)沒有設(shè)定default的值,那么會(huì)顯示一個(gè)空的字符串。10.<c:out>屬性屬性名描述類型是否接受EL是否必須默認(rèn)值說明value需要顯示的值ObjectYY無用來定義需要求解的表達(dá)式。default缺省值ObjectYN無當(dāng)求解后的表達(dá)式為null或者String為空時(shí)將打印這個(gè)缺省值。Example1<c:outvalue=“${sessionScope.anyValue}〞default=“novalue〞/>該例如將從Session查找名為“anyValue〞的參數(shù),并顯示在頁面,假設(shè)沒有找到那么顯示“novalue〞。11.通用標(biāo)簽3-2<%@tagliburi=://java.sun/jstl/core_rtprefix="c"%><body><c:setvar="example"value="${100+1}"scope="session"/> <c:outvalue="${example}"/><c:removevar="example"scope="session"/></body> out標(biāo)簽顯示值的結(jié)果remove標(biāo)簽用于刪除具有作用域的變量

set標(biāo)簽用于給變量設(shè)置值和作用域插入使用通用標(biāo)簽的指令12.

通用標(biāo)簽3-3在JSP頁面中使用通用標(biāo)簽

set、out和

remove標(biāo)簽的用法<body><H1>歡送來到ShopStop</H1>該JSP頁面在一個(gè)session作用域內(nèi)的變量中存儲(chǔ)sessionvariable,此Web應(yīng)用程序中的其他JSP頁面可以訪問此變量.<p/><c:setvar="sessionvariable"value="${80+8}"scope="session"/>在刪除sessionvariable之前先顯示它的值:<c:outvalue="${sessionvariable}"/><c:removevar="sessionvariable"scope="session"/><br/>顯示并刪除后的sessionvariable的值.<br/><c:outvalue=“${sessionvariable}〞>sessionvariable為NULL</c:out></body>演示:例如213.條件標(biāo)簽2-1JSTL提供條件標(biāo)簽以支持JSP頁面中的各種條件條件標(biāo)簽包括:條件標(biāo)簽ifchoose14.條件標(biāo)簽2-2在JSP頁面中使用條件標(biāo)簽。

if

choose

標(biāo)簽的用法。<body><c:iftest="${pageScope.signalStrength<5}"><c:setvar="signalFailure"value="true"scope="page"/></c:if><h1>使用If和Choose</h1><c:choose><c:whentest="${pageScope.signalFailure==true}">信號(hào)斷開</c:when><c:otherwise>信號(hào)翻開</c:otherwise></c:choose></body>演示:例如315.迭代標(biāo)簽庫3-1迭代標(biāo)簽用于屢次計(jì)算標(biāo)簽體迭代標(biāo)簽庫中的標(biāo)簽有:forEachforTokens迭代標(biāo)簽16.迭代標(biāo)簽庫3-2<%@tagliburi="://java.sun/jstl/core_rt"prefix="c"%><%!String[]numbers={"1","2","3","4"};%><c:setvar="member"value="Joe:Petter;Ryan|John"scope="page"/><BODY><c:forEachvar="numbering"items="<%=numbers%>"><c:outvalue="${numbering}"/></c:forEach><c:forTokensitems="${pageScope.member}"delims=":;|"var="membername"><c:outvalue="${membername}"/><br/></c:forTokens></BODY>forEach標(biāo)簽將遍歷對(duì)象集合并顯示1到4之間的數(shù)字forTokens將遍歷用所提供的分隔符分隔的值并顯示所有的名稱17.自定義標(biāo)簽創(chuàng)立步驟:創(chuàng)立標(biāo)簽實(shí)現(xiàn)類〔基類:TagSupport〕重載方法:publicintdoStartTag() //開始標(biāo)簽執(zhí)行的邏輯publicintdoEndTag() //結(jié)束標(biāo)簽執(zhí)行的邏輯Release() //釋放資源在/WEB-INF/下建立標(biāo)簽描庫述文件〔my.tld〕在JSP中通過<%@tagliburi=“/WEB-INF/my.tld〞%>引入18.自定義標(biāo)簽-標(biāo)簽實(shí)現(xiàn)類-1繼承TagSupport類如:hello標(biāo)簽重載父類的方法,實(shí)現(xiàn)該標(biāo)簽的功能doStartTag開始標(biāo)簽執(zhí)行的邏輯,如:<fhf:hello>doEndTag結(jié)束標(biāo)簽執(zhí)行的邏輯,如:</fhf:hello>doStartTag方法返回值EVAL_BODY_INCLUDE標(biāo)簽對(duì)中的文字會(huì)輸出SKIP_BODY不會(huì)處理標(biāo)簽對(duì)中的文字doEndTag方法返回值EVAL_PAGE該標(biāo)簽結(jié)束之后,繼續(xù)處理剩下的頁面內(nèi)容SKIP_PAGE該標(biāo)簽之后的頁面內(nèi)容全部不會(huì)處理19.自定義標(biāo)簽-標(biāo)簽實(shí)現(xiàn)類-2標(biāo)簽輸出內(nèi)容通過輸出對(duì)象JspWrite向用戶顯示內(nèi)容通過pageContext.getOut()方法獲得輸出對(duì)象標(biāo)簽屬性標(biāo)簽可以擁有屬性Attribute一個(gè)屬性對(duì)應(yīng)一個(gè)標(biāo)簽類中實(shí)例變量需提供獲取get和設(shè)置set方法20.標(biāo)簽庫描述文件<?xmlversion="1.0"encoding="ISO-8859-1"?><taglib><tlib-version>1.1</tlib-version> //標(biāo)簽庫的版本號(hào)<jsp-version>1.2</jsp-version> //所需JSP標(biāo)準(zhǔn)的最低版本<short-name>my</short-name> //標(biāo)簽庫縮寫名,默認(rèn)前綴<tag><name>f1</name> //自定義標(biāo)簽映射名<tag-class>taglib.mytag</tag-class> //標(biāo)簽實(shí)現(xiàn)類名<body-content>empty</body-content><attribute><name>name</name> //傳入的屬性名<required>false</require

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論