




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
JavaWeb編程
JSP技術(shù)-標(biāo)簽庫(kù)JSTL1.回憶EL(ExpressionLanguage)表示表達(dá)式語(yǔ)言JSP標(biāo)準(zhǔn)標(biāo)簽庫(kù)專家組和JSP2.0專家組共同開發(fā)了JSPELJSP表達(dá)式語(yǔ)言用于訪問存儲(chǔ)于JavaBean中的數(shù)據(jù)JSP表達(dá)式語(yǔ)言可以用于任何靜態(tài)文本和標(biāo)準(zhǔn)標(biāo)簽或自定義標(biāo)簽2.目標(biāo)理解核心標(biāo)簽庫(kù)
自定義標(biāo)簽3.JSTLJavaServerPages標(biāo)準(zhǔn)標(biāo)簽庫(kù)(JSTL)包含的各種標(biāo)簽可用于JSP頁(yè)面中JSTL的優(yōu)點(diǎn)提供一組標(biāo)準(zhǔn)標(biāo)簽
可用于編寫各種動(dòng)態(tài)JSP頁(yè)面用于訪問數(shù)據(jù)庫(kù)、有條件地執(zhí)行代碼和支持國(guó)際化4.標(biāo)簽庫(kù)目前支持四種標(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頁(yè)面的國(guó)際化;Databaseaccess(SQL)支持JSP對(duì)數(shù)據(jù)庫(kù)的操作5.核心標(biāo)簽庫(kù)核心標(biāo)簽庫(kù)包含以下標(biāo)簽:核心標(biāo)簽庫(kù)通用標(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)簽庫(kù)用于操作JSP頁(yè)面內(nèi)的作用域變量通用標(biāo)簽庫(kù)中的標(biāo)簽:通用標(biāo)簽setremoveout8.<c:out>
庫(kù):Core(核心庫(kù))URI:://java.sun/jsp/jstl/core前綴:c描述:<c:out>標(biāo)簽是一個(gè)最常用的標(biāo)簽,用于在JSP中顯示數(shù)據(jù)。它的作用是用來(lái)替代通過JSP內(nèi)置對(duì)象out或者<%=%>表達(dá)式來(lái)輸出對(duì)象的值。9.<c:out>語(yǔ)法沒有Body時(shí)的語(yǔ)法<c:outvalue=〞value〞[default=〞defaultValue〞]/>
有Body時(shí)的語(yǔ)法<c:outvalue=〞value〞>這里是Body局部</c:out>假假設(shè)value為null,會(huì)顯示default的值;假假設(shè)沒有設(shè)定default的值,那么會(huì)顯示一個(gè)空的字符串。10.<c:out>屬性屬性名描述類型是否接受EL是否必須默認(rèn)值說(shuō)明value需要顯示的值ObjectYY無(wú)用來(lái)定義需要求解的表達(dá)式。default缺省值ObjectYN無(wú)當(dāng)求解后的表達(dá)式為null或者String為空時(shí)將打印這個(gè)缺省值。Example1<c:outvalue=“${sessionScope.anyValue}〞default=“novalue〞/>該例如將從Session查找名為“anyValue〞的參數(shù),并顯示在頁(yè)面,假設(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頁(yè)面中使用通用標(biāo)簽
set、out和
remove標(biāo)簽的用法<body><H1>歡送來(lái)到ShopStop</H1>該JSP頁(yè)面在一個(gè)session作用域內(nèi)的變量中存儲(chǔ)sessionvariable,此Web應(yīng)用程序中的其他JSP頁(yè)面可以訪問此變量.<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頁(yè)面中的各種條件條件標(biāo)簽包括:條件標(biāo)簽ifchoose14.條件標(biāo)簽2-2在JSP頁(yè)面中使用條件標(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)簽庫(kù)3-1迭代標(biāo)簽用于屢次計(jì)算標(biāo)簽體迭代標(biāo)簽庫(kù)中的標(biāo)簽有:forEachforTokens迭代標(biāo)簽16.迭代標(biāo)簽庫(kù)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)簽描庫(kù)述文件〔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ù)處理剩下的頁(yè)面內(nèi)容SKIP_PAGE該標(biāo)簽之后的頁(yè)面內(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)簽庫(kù)描述文件<?xmlversion="1.0"encoding="ISO-8859-1"?><taglib><tlib-version>1.1</tlib-version> //標(biāo)簽庫(kù)的版本號(hào)<jsp-version>1.2</jsp-version> //所需JSP標(biāo)準(zhǔn)的最低版本<short-name>my</short-name> //標(biāo)簽庫(kù)縮寫名,默認(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. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度車輛抵押給個(gè)人質(zhì)押貸款合同:豪華轎車使用權(quán)協(xié)議
- 2025年度特種車輛拖車與吊裝作業(yè)服務(wù)合同
- 二零二五年度旅游居間協(xié)議合同服務(wù)項(xiàng)目解析
- 二零二五年度泳池安全知識(shí)培訓(xùn)免責(zé)協(xié)議
- 二零二五年度空調(diào)銷售與節(jié)能改造升級(jí)合同
- 二零二五年度餐飲管理公司員工培訓(xùn)與用工合同
- 高速公路排水溝施工合同(2025年度)包含臨時(shí)道路修復(fù)服務(wù)
- 2025年度銷售人員商業(yè)秘密保護(hù)及保密補(bǔ)償協(xié)議
- 二零二五年度傳媒行業(yè)勞動(dòng)合同終止及競(jìng)業(yè)限制協(xié)議范本
- 2025年度道路養(yǎng)護(hù)承包合同解除書
- 群體傷應(yīng)急預(yù)案及搶救流程
- 2021年熔化焊與熱切割基礎(chǔ)知識(shí)課件
- 3.《東施效顰》課件PPT
- 秒的認(rèn)識(shí) 完整版PPT
- 創(chuàng)新藥產(chǎn)業(yè)鏈研究培訓(xùn)框架
- (完整PPT)半導(dǎo)體物理與器件物理課件
- 大音希聲話古韻——古琴曲《流水》課件
- 浮針療法之頸椎病的治療ppt課件
- 金蝶K3 Cloud 產(chǎn)品安裝指南
- VISIO圖標(biāo)大全(完整版)
- 醫(yī)療、預(yù)防、保健機(jī)構(gòu)醫(yī)師聘用證明表(共1頁(yè))
評(píng)論
0/150
提交評(píng)論