EL表達式
JSTL標籤
EL(Expression Language)表達式語言
EL的作用是簡化JSP的開發,讓我們更方便的進行數據的讀取(從application、session、request、pageContext)
語法:
${表達式}
如:讀取session中的name屬性
Java腳本輸出:
EL:
${name}
讀取對象屬性的方法:
Java腳本:
EL:
${user.name} 或
${user["name"]}
問題:如果在JSP的application、session、request、pageContext對象中都保存了num參數
那麼EL表達式${num}會讀取哪個num呢?
EL表達式的查找順序是從最小範圍開始找:
pageContext -> request -> session -> application -> null
域對象:可以指定讀取數據的範圍
域對象 對應的JSP對象
pageScope pageContext
requestScope request
sessionScope session
applicationScope application
${域對象.表達式}
如:
讀取頁面中的num參數:
${pageScope.num}
JSTL(Java Standard Tag Library)Java標準標籤庫
作用是將JSP中的Java腳本和HTML代碼分開,將Java封裝到標籤中,在頁面調用。
使用方法:
1、導入jar包
2、在JSP頁面中加入taglib指令
3、使用標籤
核心標籤的使用:
輸出標籤
賦值標籤
示例:
刪除變量標籤
異常處理標籤
可能有異常出現的內容
示例:
異常:${ex}
if標籤
HTML代碼
示例:
${num }大於500
choose標籤
多重判斷
HTML代碼
HTML代碼
...
HTML代碼
示例:
${score }屬於A級
${score }屬於B級
${score }屬於C級
${score }屬於D級
${score }屬於E級
forEach標籤
實現循環的標籤
用法1:
HTML代碼
示例:
這是段落${i}
用法2:
HTML代碼
示例:
${user.name } - ${user.age }
總結:本章我們學習了JSP開發的兩個強大工具,EL表達式讓我們能用簡潔的語法讀取JSP對象中的值;而JSTL標籤庫讓HTML代碼和Java代碼實現了分離,從而提高了JSP代碼的可維護性,也讓JSP開發變得更加簡單。
閱讀更多 跟老司機學Java 的文章