jsp java el表达式_jsp相关笔记,el表达式、jsp标签库(jstl)
一、jsp基礎(chǔ)部分
1、介紹
概念
JSP(Java Server Page),java服務(wù)器端頁面,可以定義html標(biāo)簽,又可以定義java代碼。
原理
JSP本質(zhì)上就是一個Servlet
2、JSP定義Java代碼的方式
:定義的java代碼,在service方法中。service方法中可以定義什么,該腳本中就可以定義什么。
:定義的java代碼,在jsp轉(zhuǎn)換后的java類的成員位置。
:定義的java代碼,會輸出到頁面上。輸出語句中可以定義什么,該腳本中就可以定義什么。
3、注釋
html注釋:
只能注釋html代碼片段
jsp注釋:推薦使用
可以注釋所有
4、指令
作用
用于配置JSP頁面,導(dǎo)入資源文件
格式
分類
1、page:用來配置JSP頁面的
1、contentType:等同于response.setContentType()
高級的IDE才能生效,設(shè)置響應(yīng)體的mime類型以及字符集
低級工具,需要設(shè)置pageEncoding屬性設(shè)置當(dāng)前頁面的字符集
2、import:導(dǎo)包
3、errorPage:當(dāng)前頁面發(fā)生異常后,會自動跳轉(zhuǎn)到指定的錯誤頁面
4、isErrorPage:標(biāo)識當(dāng)前也是是否是錯誤頁面,默認(rèn)為false,表示不可以使用內(nèi)置對象exception
Title服務(wù)器正忙...
String message = exception.getMessage();
out.print(message);
%>
2、include:頁面包含的。導(dǎo)入頁面的資源文件
3、taglib:引入標(biāo)簽庫的定義,如jstl
5、JSP的內(nèi)置對象(9個)
jsp頁面中不需要獲取和創(chuàng)建,可以直接使用的對象,他們分別是:
變量名
真實類型
作用
request
HttpServletRequest
一次請求訪問的多個資源(轉(zhuǎn)發(fā))
response
HttpServletResponse
響應(yīng)對象
response
JspWriter
輸出對象,數(shù)據(jù)輸出到頁面上。和response.getWriter()類似,區(qū)別是response.getWriter()數(shù)據(jù)輸出永遠(yuǎn)在out.write()之前
pageContext
PageContext
當(dāng)前頁面共享數(shù)據(jù),還可以獲取其他八個內(nèi)置對象
session
HttpSession
一次會話的多個請求間
application
ServletContext
所有用戶間共享數(shù)據(jù)
page
Object
當(dāng)前頁面(Servlet)的對象 this
config
ServletConfig
Servlet的配置對象
exception
Throwable
異常對象,需要使用page指令的isErrorPage屬性為true
jsp文件中獲取application context: ${pageContext.request.contextPath}
二、jsp高級部分
1、EL表達(dá)式
介紹
Expression Language 表達(dá)式語言,用于替換和簡化jsp頁面中java代碼的編寫
語法及注意事項
${表達(dá)式}
注意:jsp默認(rèn)支持el表達(dá)式,如果要忽略el表達(dá)式:
1、設(shè)置jsp中page指令中:isELIgnored="true" 忽略當(dāng)前jsp頁面中所有的el表達(dá)式。
2、${表達(dá)式} :忽略當(dāng)前這個el表達(dá)式。
使用
運算符類型
運算符
功能
算數(shù)運算符
+ - * /(div) %(mod)
比較運算符
> < >= <= == !=
邏輯運算符
&&(and) ||(or) !(not)
空運算符
empty、not empty
empty用于判斷字符串、集合、數(shù)組對象是否為null或者長度是否為0,not empty則相反
獲取值,el表達(dá)式只能從域中獲取值
域名稱
描述
pageScope
page作用域
requestScope
request作用域
sessionScope
session作用域
applicationScope
application作用域
語法:
1、${域名稱.鍵名}:從指定域中獲取指定鍵的值
2、${鍵名}:表示依次從最小的域中查找是否有該鍵對應(yīng)的值,直到找到為止
request.setAttribute("name","張三");
%>
獲取的值為:${requestScope.name}3、獲取對象
${域名稱.鍵名.屬性名}:本質(zhì)上會去調(diào)用對象的getter方法
4、獲取List集合
${域名稱.鍵名[索引]}
5、獲取Map集合
${域名稱.鍵名.key名稱}或者${域名稱.鍵名["key名稱"]}
2、JSTL
介紹
JavaServer Pages Tag Library JSP標(biāo)準(zhǔn)標(biāo)簽庫,是由Apache組織提供的開源的免費的jsp標(biāo)簽,主要用于簡化和替換jsp頁面上的java代碼。
使用步驟
1、導(dǎo)入jstl相關(guān)jar包(兩個)
javax.servlet.jsp.jstl.jar、jstl-impl.jar
2、引入標(biāo)簽庫
3、使用標(biāo)簽
常用的JSTL標(biāo)簽
1、if:相當(dāng)于java代碼的if語句
//判斷request域中的一個number為奇數(shù)還是偶數(shù)
request.setAttribute("number",4);
%>
${number}為奇數(shù)
${number}為偶數(shù)
2、choose:相當(dāng)于java代碼的switch語句
//數(shù)字編號對應(yīng)星期幾
request.setAttribute("number",4);
%>
星期一
星期二
星期三
星期四
星期五
星期六
星期天
數(shù)字輸入有誤
3、foreach:相當(dāng)于java代碼的for語句
值:${item}---索引:${s.index}----循環(huán)次數(shù)(從1開始):${s.count}
或者
值:${item}---索引:${s.index}
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎總結(jié)
以上是生活随笔為你收集整理的jsp java el表达式_jsp相关笔记,el表达式、jsp标签库(jstl)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 的使用go_使用 Go 开发 Prome
- 下一篇: java面板换一个斜的圆形_java