jsp EL、JSTL
阿新 • • 發佈:2020-12-26
EL 表示式。
獲取作用域和作用域中的資料。
// servlet
request.setAttribute("attrName","張三");
request.setAttribute("attrPw","111");
//
User user = new User();
user.setUsername("李四");
user.setAge(12);
request.setAttribute("user", user) ;
// .jsp
// 1 從小到大的作用域中尋找,如果找到了就顯示
attrName:${attrName}
<br>
// 2 直接作用域物件取值
attrName:<span>${requestScope.attrName}</span>
<br>
attrPw:<span>${requestScope.attrPw}</span>
<br>
// 獲取物件值
username:<span>${requestScope.user.username}</span>
<br>
age:< span>${requestScope.user.age}</span>
// 作用域
// session
${sessionScope.sex}<br>
// pageContext
${pageContext.sex}<br>
//application
${applicationScope.sex}<br>
獲取引數中的資料。
// index.jsp
<a href="ElDemo.jsp?username=zs&age=13"> ElDemo </a>
// ElDemo.jsp
username: <span>${param.username}</span>
<br>
age:<span>${param.age}</span>
<br>
運算。
1+1:${1+1}<br>
4/2:${4/2}<br>
4/2:${4 div 2}<br>
3*10:${3*10}<br>
// 是否為空
${empty list}<br>
header、cookie。
hearder:<span>${header}</span>
<br>
cookie:<span>${header.cookie}</span>
<br>
sessionValue:<span>${cookie.JSESSIONID.value}</span>
<br>
JSTL 標準標籤庫。引入 jstl-1.2.jar。
// servlet
// 建立一個集合
List<User> users = new ArrayList<>();
for (int i = 0; i < 5; i++) {
User u = new User(i + 1, "name_" + i, "pw_" + i);
users.add(u);
}
request.setAttribute("list",users);
// .jsp
<!-- 匯入標籤庫-->
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
// 遍歷
<c:forEach items="${list}" var="user" varStatus="status" begin="3" end="5">
id:${user.id}<br>
username:${user.username}<br>
password:${user.password}<br>
index:${status.index}<br>
</c:forEach>
// if 條件判斷
<c:if test="${requestScope.sex == 1}">
男
</c:if>
<br>
// switch
<c:choose>
<c:when test="${requestScope.sex == 1}">男</c:when>
<c:when test="${requestScope.sex == 2}">女</c:when>
<c:otherwise>程式設計師</c:otherwise>
</c:choose>
<br>
// 給session作用域設定屬性
<c:set var="address" value="深圳" scope="session"></c:set>
addresss:${sessionScope.address}
// a 標籤 <a href="ok.jsp?id=33&age=18"></a>
<a href="
<c:url value='ok.jsp'>
<c:param name="id" value="33"/>
<c:param name="age" value="${requestScope.sex}"/>
</c:url>
">點選</a>
// 時間格式化
birthday:<fmt:formatDate value="${requestScope.birthday}" pattern="yyyy-MM-dd HH:mm:ss"/><br>
// 浮點格式化
<fmt:formatNumber value="${requestScope.sal}" pattern="##.###"></fmt:formatNumber>
<br>