JSTL – Jakarta Standard Tag Library
JSTL là tập hợp các thẻ chuẩn trong JSP, giúp thay thế scriptlet (<% %>) bằng cú pháp dễ đọc hơn và thân thiện với HTML.
Tải thư viện
Cấu hình Taglib
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
Các JSTL Core Tag cơ bản
c:out – Giống <%= %>
<c:out value="customer.address.street"/>
<c:out value="${'Hello'}"/>
c:set – Gán giá trị vào biến (và có thể chỉ định scope)
<c:set var="x" value="10" />
<c:set var="salary" scope="session" value="${2000 * 2}" />
<c:out value="${salary}" />
c:if – Câu điều kiện
<c:set var="x" value="10" />
<c:if test="${x > 5}">
<p>x is greater than 5</p>
</c:if>
c:choose, c:when, c:otherwise – If...else nâng cao
<c:set var="day" value="${1}" />
<p>
<c:choose>
<c:when test="${day == 0}">Sunday</c:when>
<c:when test="${day == 1}">Monday</c:when>
<c:when test="${day == 2}">Tuesday</c:when>
<c:when test="${day == 3}">Wednesday</c:when>
<c:when test="${day == 4}">Thursday</c:when>
<c:when test="${day == 5}">Friday</c:when>
<c:otherwise>Saturday</c:otherwise>
</c:choose>
</p>
c:catch – Bắt lỗi
<c:catch var="catchException">
<% int x = 5 / 0; %>
</c:catch>
<c:if test="${catchException != null}">
<p>Error: ${catchException.message}</p>
</c:if>
c:forEach – Duyệt mảng
<ul>
<c:forEach var="color" items="${colors}">
<li>${color}</li>
</c:forEach>
</ul>
c:forTokens – Duyệt chuỗi tách bằng dấu phân cách
<c:forTokens items="apple,banana,orange" delims="," var="fruit">
<c:out value="${fruit}" /><br />
</c:forTokens>
