![老師java預(yù)科56月份錄屏el與jstl_第1頁](http://file4.renrendoc.com/view/318d87d6d9a902b96cbe63c502e08bcd/318d87d6d9a902b96cbe63c502e08bcd1.gif)
![老師java預(yù)科56月份錄屏el與jstl_第2頁](http://file4.renrendoc.com/view/318d87d6d9a902b96cbe63c502e08bcd/318d87d6d9a902b96cbe63c502e08bcd2.gif)
![老師java預(yù)科56月份錄屏el與jstl_第3頁](http://file4.renrendoc.com/view/318d87d6d9a902b96cbe63c502e08bcd/318d87d6d9a902b96cbe63c502e08bcd3.gif)
![老師java預(yù)科56月份錄屏el與jstl_第4頁](http://file4.renrendoc.com/view/318d87d6d9a902b96cbe63c502e08bcd/318d87d6d9a902b96cbe63c502e08bcd4.gif)
![老師java預(yù)科56月份錄屏el與jstl_第5頁](http://file4.renrendoc.com/view/318d87d6d9a902b96cbe63c502e08bcd/318d87d6d9a902b96cbe63c502e08bcd5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
EL與JSTL第二單元
《Java
Web開發(fā)技術(shù)》commons-fileupload文件上傳CKEditor分頁后臺分頁查詢前臺JSP頁面的分頁顯示回顧與作業(yè)點(diǎn)評2/30本課任務(wù)任務(wù)1:優(yōu)化顯示新聞信息代碼任務(wù)2:使用EL增加程序可讀性任務(wù)3:使用JSTL顯示新聞列表3/30本課目標(biāo)學(xué)完本次課程后,你能夠:掌握使用EL表達(dá)式優(yōu)化頁面顯示掌握使用JSTL標(biāo)簽優(yōu)化頁面顯示4/30為什么要使用EL表達(dá)式<%//每頁顯示的新聞列表List<News>
newsList=newsService.getPageNewsList(pageIndex,
pageSize);int
i=0;for(News
news:newsList){i++;%><tr
<%if(i%2!=0){%>class="admin-list-td-h2"<%}
%>><td><%=news.getAuthor()%></td><td><%=news.getCreateDate()
%></td>……<table
><c:forEach
var="news"
items="${list}"><tr><td><c:out
value="${news.title}"
/></td></tr></c:forEach></table>5/30為什么要使用EL表達(dá)式JSP腳本有哪些不足代碼結(jié)構(gòu)混亂腳本與HTML混合,容易出錯(cuò)代碼不易于維護(hù)使用EL表達(dá)式來優(yōu)化程序代碼,增加程序可讀性6/30
EL語法EL表達(dá)式(Expression
Language)
${EL
表達(dá)式}
例如:${username}EL操作符
操作符“.”
獲取對象的屬性,例如:${news.title}
操作符“[]”
獲取對象的屬性,例如:${news["title"]}
獲取集合中的對象,例如newsList[0]注意EL嚴(yán)格區(qū)分大小寫,初學(xué)者嚴(yán)格按規(guī)范書寫,有利于養(yǎng)成好的編碼習(xí)慣
演示示例
:EL語法
完成時(shí)間:5分鐘
共性問題集中講解7/30運(yùn)算符說明()改變執(zhí)行的優(yōu)先級,例如${3*(4+5)}+,-,*,/,%算術(shù)運(yùn)算符,例如${3+2}==,!=,>,>=,<,<=關(guān)系運(yùn)算符,例如${a==b}或${aeqb}&&,||,!邏輯運(yùn)算符,例如${true&&false}?:條件運(yùn)算符,例如${a>b?1:2}empty用于檢測變量名是否為空,是否等于NULL,例如${emptyname}EL運(yùn)算符8/30運(yùn)算符說明()改變執(zhí)行的優(yōu)先級,例如${3*(4+5)}+,-,*,/,%算術(shù)運(yùn)算符,例如${3+2}==,!=,>,>=,<,<=關(guān)系運(yùn)算符,例如${a==b}或${aeqb}&&,||,!邏輯運(yùn)算符,例如${true&&false}?:條件運(yùn)算符,例如${a>b?1:2}empty用于檢測變量名是否為空,是否等于NULL,例如${emptyname}EL運(yùn)算符注意${param.password1}
==
${param.password2}${
${param.password1
}
==
${
param.password2
}
}${
param.password1
==
param.password2
}9/30關(guān)系運(yùn)算符范例結(jié)果==或eq${5==5}或${5eq5}true!=或ne${5!=5}或${5ne5}false<或lt${3<5}或${3lt5}true>或gt${3>5}或{3gt5}false<=或le${3<=5}或${3le5}true>=或ge${3>=5}或${3ge5}falseEL運(yùn)算符為了避免JSP混淆運(yùn)算符和頁面關(guān)鍵字,很多運(yùn)算符都有替代寫法10/30EL功能取得JavaBean對象的屬性${news.title}取得數(shù)組、List、Map類型對象的元素${list[0]}使用各類運(yùn)算符對原始數(shù)據(jù)進(jìn)行簡單處理${totalRecordCount/pageSize}屏蔽一些常見的異常${username}能實(shí)現(xiàn)簡單的自動(dòng)類型轉(zhuǎn)換${news}相當(dāng)于(News)request.getAttribute("news")11/30作用域Java代碼取值EL取值請求作用域request.getAttribute("news");${requestScope.news}會話作用域session.getAttribute("username");${sessionScope.username}程序作用域application.getAttribute("count");${applicationScope.count}頁面作用域pageContext.getAttribute("userNum");${pageScope.userNum}EL訪問作用域request.setAttribute("news",news);兩種方式取數(shù)據(jù):Java小腳本:request.getAttribute("news",news);使用EL表達(dá)式:${
news
}或者${
requestScope.news
}演示示例
:使用EL訪問作用域12/30課堂練習(xí)完成時(shí)間:5分鐘需求說明修改新聞明細(xì)頁面newsDetailView.jsp,使用EL顯示新聞的各種信息實(shí)現(xiàn)思路修改newsDetailView.jsp共性問題集中講解13/30小結(jié)EL語法格式:${
表達(dá)式
}操作符.
操作符可用于訪問對象的屬性[
]
操作符用于訪問對象的屬性,也可以訪問數(shù)組或集合的元素算術(shù)運(yùn)算符、關(guān)系運(yùn)算符、邏輯運(yùn)算符等用法與Java相似使用EL訪問作用域請求作用域:${requestScope.news}會話作用域:${sessionScope.username}程序作用域:${applicationScope.count}頁面作用域:${pageScope.userNum}14/30
JSTL介紹問題
使用了EL表達(dá)式可以簡化頁面代碼結(jié)構(gòu),那么為什
么還要使用JSTL呢?<%
//每頁顯示的新聞列表List<News>
newsList=newsService.getPageNewsList(pageIndex,
pageSize);int
i=0;for(News
news:newsList){
i++;%>
<tr
<%if(i%2!=0){%>class="admin-list-td-h2"<%}
%>>
<td><%=news.getAuthor()%></td>
<td><%=news.getCreateDate()
%></td>……
條件判斷循環(huán)控制15/30JSTL介紹問題使用了EL表達(dá)式可以簡化頁面代碼結(jié)構(gòu),那么為什 么還要使用JSTL呢?JSTL(JavaServerPagesStandardTagLibrary) JSP標(biāo)準(zhǔn)標(biāo)簽庫 實(shí)現(xiàn)JSP頁面中的邏輯控制JSTL使用步驟 下載jstl.jar和standard.jar包 將這兩個(gè)包復(fù)制到WEB-INF\lib目錄 在JSP頁面中添加指令 <%@tagliburi=""prefix="c"%>
演示示例:添加jstl.jar和standard.jar包
16/30<c:out/>標(biāo)簽<c:out
value="value"default="default"
escapeXml="true|false"/>
需要輸出顯示的表達(dá)式默認(rèn)輸出顯示的值是否對輸出的內(nèi)容進(jìn)行轉(zhuǎn)義語法17/30表示變量名稱表示變量的值存在的作用域語法
設(shè)置變量和對象屬性設(shè)置變量
<c:set
var="name"value="value
"
scope="scope"
/>設(shè)置對象屬性<c:set
value="value
"target="target
"property="propertyName"
/>
演示示例
:使用<c:out
/>顯示變量值
表示屬性的值表示對象的名稱表示對象的屬性名稱語法18/30標(biāo)簽庫名稱資源標(biāo)示符(uri)前綴(prefix)核心標(biāo)簽庫
c國際化/格式化標(biāo)簽庫
fmtXML標(biāo)簽庫
x數(shù)據(jù)庫標(biāo)簽庫
sql函數(shù)標(biāo)簽庫
ionsfnJSTL標(biāo)簽分類核心標(biāo)簽庫國際化/格式化標(biāo)簽庫<%@tagliburi=""prefix="c"%><%@tagliburi=""prefix="fmt"%>19/30課堂練習(xí)完成時(shí)間:5分鐘需求說明修改新聞明細(xì)頁面newsDetailView.jsp,把顯示新聞標(biāo)題、摘要、內(nèi)容的EL表達(dá)式替換成<c:out/>標(biāo)簽實(shí)現(xiàn)思路找到該頁面及需要修改的EL表達(dá)式使用<c:out/>標(biāo)簽輸出EL表達(dá)式的值共性問題集中講解20/30<c:forEach
var="varName“items=“tems"
varStatus="varStatus">
……</c:forEach>集合中元素的名稱
<c:forEach/>標(biāo)簽<c:forEach/>迭代標(biāo)簽
實(shí)現(xiàn)對集合的遍歷
當(dāng)前循環(huán)的狀態(tài)信息,例如循環(huán)的索引號語法
集合對象演示示例
:使用<c:forEach/>顯示新聞列表21/30
<c:if/>標(biāo)簽<c:if/>條件標(biāo)簽
實(shí)現(xiàn)條件的判斷判斷的結(jié)果判斷結(jié)果存放的作用域語法<c:if
test="condition“
var="varName"
scope="scope">
……</c:if>
演示示例
:使用<c:if/>實(shí)現(xiàn)隔行換色
22/30
使用JSTL構(gòu)建URL<c:url/>超鏈接標(biāo)簽<c:param/>參數(shù)標(biāo)簽<c:url
value=
"url
"
/>語法
<c:param
name="name"
value="value"/><c:import/>導(dǎo)入標(biāo)簽語法參數(shù)的名稱參數(shù)的值語法
導(dǎo)入資源的路徑<c:import
url="URL"
/>
演示示例
:使用<c:url/>鏈接新聞修改頁面23/30
<fmt:formatDate/>標(biāo)簽<fmt:formatDate/>格式化標(biāo)簽
實(shí)現(xiàn)格式化的日期和時(shí)間顯示<fmt:formatDate
value="date
"
pattern="yyyy-MM-dd
HH:mm:ss"/>
演示示例
:使用<fmt:formatDate/>標(biāo)簽格式化時(shí)間的顯示
語法時(shí)間對象顯示格式24/30標(biāo)簽庫名稱資源標(biāo)示符(uri)<c:out/>輸出文本內(nèi)容到out對象,常用于顯示特殊字符,顯示默認(rèn)值<c:set/>在作用域中設(shè)置變量或?qū)ο髮傩缘闹?lt;c:remove/>在作用域中移除變量的值<c:if/>實(shí)現(xiàn)條件判斷結(jié)構(gòu)<c:forEach/>實(shí)現(xiàn)循環(huán)結(jié)構(gòu)<c:url/>構(gòu)造url地址<c:param/>在url后附加參數(shù)<c:import/>在頁面中嵌入另一個(gè)資源內(nèi)容<fmt:formatDate/>格式化時(shí)間
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 以贈予代購合同范本
- 冰涼粉配料采購合同范例
- 人事商業(yè)合同范本
- 企業(yè)正規(guī)勞務(wù)合同范例
- 冷凍鹽水采購合同范例
- 2025-2030年戶外山地自行車賽道行業(yè)跨境出海戰(zhàn)略研究報(bào)告
- 2025-2030年商務(wù)宴請飲料行業(yè)跨境出海戰(zhàn)略研究報(bào)告
- 2025-2030年廚電二手交易平臺行業(yè)深度調(diào)研及發(fā)展戰(zhàn)略咨詢報(bào)告
- 2025-2030年手繪玻璃酒杯定制行業(yè)深度調(diào)研及發(fā)展戰(zhàn)略咨詢報(bào)告
- 批發(fā)市場競爭力分析與提升策略考核試卷
- 2025年日歷(日程安排-可直接打印)
- 合成氨操作規(guī)程
- 清華大學(xué)抬頭信紙
- 高中生物必修1思維導(dǎo)圖及部分彩圖
- 新漢語水平考試 HSK(四級)
- JJF 1975-2022 光譜輻射計(jì)校準(zhǔn)規(guī)范
- Q∕SY 05268-2017 油氣管道防雷防靜電與接地技術(shù)規(guī)范
- 財(cái)產(chǎn)保險(xiǎn)招標(biāo)評分細(xì)則表
- 培卵素是什么
- 《細(xì)菌》初中生物優(yōu)秀教學(xué)設(shè)計(jì)(教案)
- ihaps用戶手冊
評論
0/150
提交評論