003.JSTL 標簽庫

JSP 標準標簽庫(JSP Standard Tag Library)是一個 JSP 標簽集合楔敌,它封裝了 JSP 應用的通用核心功能啤挎。
它的出現(xiàn),是因為人們開始注重軟件的分層設(shè)計梁丘,不希望在 JSP 頁面中出現(xiàn) JAVA 邏輯代碼侵浸。同時也由于自定義標簽的開發(fā)難度較大、不利于技術(shù)的標準化氛谜,因此產(chǎn)生了 JSTL。
JSTL 和 EL 的結(jié)合区端,基本可以讓頁面再無 <% %> 代碼值漫。
JSTL 標準標簽庫可分為五類:[其實,一般就用三種]

核心標簽庫

共 14 個,從功能上可以分為 4 類织盼。引用方法:

個人喜歡引入方式:
<%@taglib prefix="c" uri="http://java.sun.com/jstl/core_rt" %>

可以測試上節(jié)的JSP標簽方式

還有一種引入方式為:
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

表達式控制

這個是我們最經(jīng)常使用的

標簽 描述
<c:out > 用于顯示數(shù)據(jù)杨何,就像 <%= %> ,區(qū)別在于 <c:out> 標簽可以直接通過 . 操作符來訪問屬性
<c:set > 用于保存數(shù)據(jù)
<c:remove> 用于刪除數(shù)據(jù)
<c:catch > 用來處理產(chǎn)生錯誤的異常狀況沥邻,并且將錯誤信息儲存起來

流程控制

標簽 描述
<c:if > 與我們在一般程序中用的 if 一樣,但是沒有else操作,變相實現(xiàn)
<c:choose > 本身只當做 <c:when><c:otherwise> 的父標簽,相當于 switch 標簽
<c:when> <c:choose> 的子標簽危虱,用來判斷條件是否成立
<c:otherwise> <c:choose> 的子標簽,接在 <c:when> 標簽后唐全,當 <c:when> 標簽判斷為 false 時被執(zhí)行

循環(huán)[重點]

標簽 描述
<c:forEach> 基礎(chǔ)迭代標簽埃跷,接受多種集合類型,默默的回憶,有哪些重點?
<c:forTokens> 根據(jù)指定的分隔符來分隔內(nèi)容并迭代輸出,怎么說,真的很實用的功能!

URL操作

標簽 描述
<c:import> 檢索一個絕對或相對 URL,然后將其內(nèi)容暴露給頁面,可以替換JSP的動態(tài)包含
<c:redirect> 使用可選的查詢參數(shù)來創(chuàng)造一個 URL
<c:url > 重定向至一個新的 URL
<c:param > 用來給包含或重定向的頁面?zhèn)鬟f參數(shù)

<c:import> 想一想如果配合使用JSP的過濾器,那會是什么結(jié)果?請做一下實驗!


格式化標簽庫

用于格式化并輸出文本邮利、日期弥雹、時間、數(shù)字延届,這里只介紹最最最常用的兩個標簽,引用方法:

個人喜歡引入方式:
<%@taglib prefix="fmt" uri="http://java.sun.com/jstl/fmt_rt" %>
可以測試上節(jié)的JSP標簽方式

還有一種引入方式為:
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>

格式化數(shù)字

標簽 描述
<fmt:formatNumber> 使用指定的格式或精度格式化數(shù)字

涉及到錢的時候,不要使用float/double,還有使用銀行家四舍五入方式

格式化日期

標簽 描述
<fmt:formatDate> 使用指定的風格或模式格式化日期和時間

yyyy mm MM dd H h ss 都是含義,默背一下!

函數(shù)標簽庫

大部分都是通用的字符串處理函數(shù)剪勿,用于配合 EL 表達式使用。引用方法:

個人喜歡引入方式:
<%@taglib prefix="fn" uri="http://java.sun.com/jstl/functions_rt" %>
可以測試上節(jié)的JSP標簽方式

還有一種引入方式為:
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>

標簽 描述
<fmt:formatNumber> 使用指定的格式或精度格式化數(shù)字

涉及到錢的時候,不要使用float/double,還有使用銀行家四舍五入方式

格式化日期

標簽 描述
fn:contains() 測試輸入的字符串是否包含指定的子串,如: ${fn:contains("ABC", "a")}
fn:containsIgnoreCase() 測試輸入的字符串是否包含指定的子串方庭,大小寫不敏感,如: ${fn:containsIgnoreCase("ABC", "a")}
fn:endsWith() 測試輸入的字符串是否以指定的后綴結(jié)尾,如:${fn:endsWith("ABC", "bc")}
fn:startsWith() 測試輸入的字符串是否以指定的前綴開始,如:${fn:startsWith("ABC", "ab")}
fn:escapeXml() 用于將所有特殊字符轉(zhuǎn)化為字符實體碼厕吉。它只包含一個 string 參數(shù),返回一個 String 類型的值
fn:indexOf() 用于取得子字符串與源字符串匹配的開始位置械念,若子字符串與源字符串中的內(nèi)容沒有匹配成功將返回“ -1 ”头朱。它包括 string 和 substring 兩個參數(shù),返回結(jié)果為 int 類型.如:${fn:indexOf("ABCD","aBC")}
fn:join() 將數(shù)組中的元素合成一個字符串然后輸出
fn:length() 返回字符串長度
fn:replace() 將輸入字符串中指定的位置替換為指定的字符串然后返回
fn:split() 將字符串用指定的分隔符分隔然后組成一個子字符串數(shù)組并返回
fn:substring() 返回字符串的子集,如:${fn:substring("ABC","1","2")}
fn:substringAfter() 返回字符串在指定子串之后的子集,如:${fn:substringAfter("ABCD","BC")}
fn:substringBefore() 返回字符串在指定子串之前的子集,如:${fn:substringBefore("ABC","1","2")}
fn:toLowerCase() 將字符串中的字符轉(zhuǎn)為小寫
fn:toUpperCase() 將字符串中的字符轉(zhuǎn)為大寫
fn:trim() 移除首位的空白符

SQL 標簽庫 我不會

XML 標簽庫 我不會

參考

C標簽介紹
fmt標簽介紹
functions忘記寫了,日后補充上,百度也有一堆

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末订讼,一起剝皮案震驚了整個濱河市髓窜,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖寄纵,帶你破解...
    沈念sama閱讀 221,695評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件鳖敷,死亡現(xiàn)場離奇詭異,居然都是意外死亡程拭,警方通過查閱死者的電腦和手機定踱,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,569評論 3 399
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來恃鞋,“玉大人崖媚,你說我怎么就攤上這事⌒衾耍” “怎么了畅哑?”我有些...
    開封第一講書人閱讀 168,130評論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長水由。 經(jīng)常有香客問我荠呐,道長,這世上最難降的妖魔是什么砂客? 我笑而不...
    開封第一講書人閱讀 59,648評論 1 297
  • 正文 為了忘掉前任泥张,我火速辦了婚禮,結(jié)果婚禮上鞠值,老公的妹妹穿的比我還像新娘媚创。我一直安慰自己,他們只是感情好彤恶,可當我...
    茶點故事閱讀 68,655評論 6 397
  • 文/花漫 我一把揭開白布钞钙。 她就那樣靜靜地躺著,像睡著了一般粤剧。 火紅的嫁衣襯著肌膚如雪歇竟。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,268評論 1 309
  • 那天抵恋,我揣著相機與錄音焕议,去河邊找鬼。 笑死弧关,一個胖子當著我的面吹牛盅安,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播世囊,決...
    沈念sama閱讀 40,835評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼别瞭,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了株憾?” 一聲冷哼從身側(cè)響起蝙寨,我...
    開封第一講書人閱讀 39,740評論 0 276
  • 序言:老撾萬榮一對情侶失蹤晒衩,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后墙歪,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體听系,經(jīng)...
    沈念sama閱讀 46,286評論 1 318
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,375評論 3 340
  • 正文 我和宋清朗相戀三年虹菲,在試婚紗的時候發(fā)現(xiàn)自己被綠了靠胜。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,505評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡毕源,死狀恐怖浪漠,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情霎褐,我是刑警寧澤址愿,帶...
    沈念sama閱讀 36,185評論 5 350
  • 正文 年R本政府宣布,位于F島的核電站冻璃,受9級特大地震影響必盖,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜俱饿,卻給世界環(huán)境...
    茶點故事閱讀 41,873評論 3 333
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望塌忽。 院中可真熱鬧拍埠,春花似錦、人聲如沸土居。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,357評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽擦耀。三九已至棉圈,卻和暖如春决乎,著一層夾襖步出監(jiān)牢的瞬間做祝,已是汗流浹背导绷。 一陣腳步聲響...
    開封第一講書人閱讀 33,466評論 1 272
  • 我被黑心中介騙來泰國打工悠砚, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留叠聋,地道東北人煤惩。 一個月前我還...
    沈念sama閱讀 48,921評論 3 376
  • 正文 我出身青樓畜晰,卻偏偏與公主長得像喻犁,于是被迫代替她去往敵國和親汽纤。 傳聞我的和親對象是個殘疾皇子上岗,可洞房花燭夜當晚...
    茶點故事閱讀 45,515評論 2 359

推薦閱讀更多精彩內(nèi)容

  • JSP 基本結(jié)構(gòu)JSP 頁面組成:模板文本(HTML,XML,純文本),JSP 元素蕴坪;JSP 元素:腳本元素肴掷,指令...
    jslancer閱讀 849評論 0 11
  • 一敬锐、EL表達式簡介 1.EL全名為Expression Language。主要作用: 獲取數(shù)據(jù):EL表達式主要用于...
    yjaal閱讀 3,931評論 2 28
  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語法呆瞻,類相關(guān)的語法台夺,內(nèi)部類的語法,繼承相關(guān)的語法栋烤,異常的語法谒养,線程的語...
    子非魚_t_閱讀 31,664評論 18 399
  • 1什么是JSTLJSTL是apache對EL表達式的擴展(也就是說JSTL依賴EL),JSTL是標簽語言明郭!JSTL...
    TY_閱讀 378評論 0 1
  • 孩子兩歲另三個月薯定。 這個階段始绍,孩子開始對各種關(guān)系產(chǎn)生濃厚的興趣,開啟十萬個為什么模式话侄。媽媽的媽...
    AAAAA蕙質(zhì)蘭心閱讀 208評論 1 1