EL表達式 與 JSTL標準標簽庫
阿新 • • 發佈:2019-03-27
數據庫 tle etc 當前 商品列表 toc sts jar java
目錄
- EL表達式
- 什麽是EL表達式
- 作用
- EL內置11對象
- EL執行表達式
- JSTL
- 什麽是JSTL
- JSTL標準標簽庫有5個子庫
- 把JSTL標簽庫jar包引入工程當中
- if標簽
- foreach標簽
- JavaEE開發模式
- 什麽是開發模式
- JavaEE模式
EL表達式
什麽是EL表達式
- EL(Express Lanuage)表達式可以嵌入在jsp頁面內部
- 減少jsp腳本的編寫
- EL出現的目的是要替代jsp頁面中腳本的編寫。
作用
? EL最主要的作用是獲得四大域中的數據
?
從四大域當中取數據 pageContext ${pageScope.key} request ${requestScope.key} session ${sessionScope.key} application ${applicationScope.key} 簡寫 ${EL表達式} EL從四個域中獲得某個值${key} 依次從pageContext域,request域,session域,application域中獲取屬性 在某個域中獲取後將不在向後尋找
EL內置11對象
pageScope 獲取JSP中pageScope域中的數據 requestScope 獲取JSP中requestScope域中的數據 sessionScope 獲取JSP中sessionScope域中的數據 applicationScope 獲取JSP中applicationScope域中的數據 param request.getParameter() paramValues rquest.getParameterValues() header request.getHeader(name) headerValues request.getHeaderValues() initParam this.getServletContext().getInitParameter(name) cookie request.getCookies()---cookie.getName()---cookie.getValue() pageContext pageContext獲得其他八大對象 獲取當前項目的名稱 ${pageContext.request.contextPath}
EL執行表達式
- 內部可以進行運算,只要有結果
- ${1+1}
- ${empty user} 判斷user是否為空?為空返回true,不為空則返回false
- ${user==null?true:false}
?
JSTL
什麽是JSTL
- JSTL(JSP Standard Tag Library),JSP標準標簽庫
- 可以嵌入在jsp頁面中使用標簽的形式完成業務邏輯等功能
- jstl出現的目的同el一樣也是要代替jsp頁面中的腳本代碼
JSTL標準標簽庫有5個子庫
Core :核心庫
http://java.sun.com/jsp/jstl/core
前綴:c
I18N:國際化庫
http://java.sun.com/jsp/jstl/fmt
前綴:fmt
SQL
http://java.sun.com/jsp/jstl/sql
前綴:sql
XML
http://java.sun.com/jsp/jstl/xml
前綴:x
Functions
http://java.sun.com/jsp/jstl/functions
前綴:fn
把JSTL標簽庫jar包引入工程當中
? 引入標簽庫
? <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
if標簽
?
<c:if test="${1==1 }">滿足條件時,中間的內容才會顯示出來</c:if>
通過是結合EL表達式一起使用,EL從域中取數據,使用JSTL進行判斷或者遍歷
if標簽使用
1.登錄成功時,把用戶寫到session域當中
2.在首頁當中進行判斷,從session域當中取數據
3.通過EL結合JSTL進行判斷
foreach標簽
第一種:普通循環
第二種:增加for循環
遍歷字符串集合
遍歷對象集合
遍歷map
商品列表展示
JavaEE開發模式
什麽是開發模式
? 模式在開發過程中總結出的“套路”,總結出的一套約定俗成的設計模式
JavaEE模式
?
model1模式
由 jsp+javaBean 技術組成
弊端
業務多時,導致jsp頁面容易混亂
model2模式
由 jsp+servlet+javaBean 技術組成
優點
開發中使用各個技術擅長的方面
servlet擅長java的業務代碼
jsp擅長頁面的展示
MVC
Model--javaBean--封裝數據
View--JSP--頁面展示
Controller--servlet--獲取數據,對數據進行封裝,傳遞數據、指定頁面顯示
三層架構
web層--與客戶端交互
service層--復雜業務邏輯
dao層--與數據庫進行交互
EL表達式 與 JSTL標準標簽庫