JSTL JSP的標準標籤庫
語法規則類似標籤的語法,或者說類似JSP標準動作的語法。
典型的JSTL標籤例如:<c:if test=""></c:if>
HTML中將標籤的時候,我們涉及到的幾個名詞:
起始標籤、終止標籤、標籤的主體、標籤的屬性、空標籤(單標籤)
JSTL的分類:
核心標籤庫(core)、重點講述
格式化/國際化標籤庫(fmt)、略過
SQL標籤庫(sql)、忽略
XML標籤庫(xml)、暫且不講
核心標籤庫
c:if 判斷標籤 test屬性
c:choose 判斷標籤(相當於switch語法,可以多重判斷)
c:when 判斷滿足條件 test屬性
c:otherwise 其他不滿足條件(相當於switch的default)
c:forEach 迭代標籤 items屬性 var屬性
c:forTokens 拆分字符串標籤 items屬性 var屬性(主要功能類似split方法)
“ZhangSan|LiSi|WangWu” -> 長度爲3的字符串數組,每次拿一個子字符串放在var指定的變量中。
c:out 輸出
c:set 將數據存放在作用於範圍內
c:redirect 重定向標籤
JSP頁面中,如何使用JSTL
1、在項目的構建路徑中導入JSTL的支持包jstl1.2.jar
2、在JSP頁面上使用taglib指令來引入標籤庫(taglib指令不光可以引用標準標籤庫,還可以引用自定義標籤庫)
<%@taglib uri="http://java.sun.com/jst1/core_rt" prefic="wc"%>
3、使用標籤庫(通常需要EL表達式來配合)
例1:
<wc:if test="$sessionScope.user==null}"></wc if>//判斷對象是否爲空
例2:
<c:if test="${not empty sessionScope.user}">
<h1>用戶${user.unick}接收到的消息列表</h1>
<c:if test="${not empty requestScope.result}">
<ul>
<c:forEach items="${requestScope.result}" var="obj">
<li>${obj.msgSendTime}【${obj.msgSendId}】:${obj.msgSendContent}</li>
</c:forEach>
</ul>
</c:if>
</c:if>
功能:
登錄?註冊?修改用戶信息?修改密碼?
查詢某用戶接收到消息?
發送消息
可以選擇發送對象,如果未選擇發送對象的時候發送給全體。
Servlet
使用Java語言編寫的,運行在Web容器中的,基於請求與響應機制的一種程序。
1、Java的語法格式
2、必須使用Web容器(Tomcat)運行
3、處理瀏覽器請求
如何編寫Servlet
1、需要引用Servlet的相關支持包(通常Web容器內置)
2、需要編寫一個Java類。需要繼承HttpServlet父類(GenericServlet爺爺輩的)
3、需要重寫doGet或者doPost或者service方法
4、需要編寫Servlet的部署描述文件或者採用註解的方式對類聲明
Servlet配置中的標籤
<servlet>
<servlet-name></servlet-name>
<servlet-class></servlet-class>
<init-param>
<param-name></param-name>
<param-value></param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name></servlet-name>
<url-pattern></url-pattern>
</servlet-mapping>