前言:JSTL(Java server pages standarded tag library,即JSP标准标签库)是由JCP(Java community Proces)所制定的标准规范,它主要提供给Java Web开发人员一个标准通用的标签库,开发人员可以利用这些标签取代JSP页面上的Java代码,从而提高程序的可读性,降低程序的维护难度。
一句话概括:简化jsp中的java脚本,因为el能力有限,el只能取出域对象中的参数,与el搭配使用。
一.使用
1.导入jar包
2.使用taglib指令,导入标签库
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
二.标签
1.if标签
条件判断
<%
request.setAttribute("name","李白");
%>
<c:if test="${name == '李白'}">
${
name}<br>
</c:if>
<c:if test="true">
${
"ok"}
</c:if>
这里<c:,是因为使用taglib指令时,prefix=“c”.
2.set标签
2.set标签
set标签用于向域对象中存值,如上述if标签中的代码,替代了js中的存值过程
<%--<%--%>
<%--request.setAttribute("name","李白");--%>
<%--%>--%>
<c:set var="name" value="李白" scope="request"></c:set>
3.choose标签
3.choose标签
类似于java代码中的if else
<%--<%
request.setAttribute("GPA",4.02);
%>--%>
<c:set var="GPA" value="4.02" scope="request"></c:set>
<c:choose>
<c:when test="${GPA>=4.00}">
${"A"}
</c:when>
<c:when test="${GPA>=3.00&&GPA<4.00}">
${"B"}
</c:when>
<c:when test="${GPA>=2.00&&GPA<3.00}">
${"C"}
</c:when>
<c:when test="${GPA>=1.00&&GPA<2.00}">
${"D"}
</c:when>
<c:otherwise>
${"E"}
</c:otherwise>
</c:choose>
4.forEach
4.forEach
相当于java中的for循环
<%--普通循环进行遍历--%>
<c:forEach begin="0" end="9" var="i" step="1">
${i}
</c:forEach>
<br>
<%--items属性,使用el从域对象中取出集合或数组
forEach 会遍历集合或数组,将遍历得到的值赋值给var中的变量i,并存入
pageContext域对象中,所以可以用${}EL表达式获取其值
--%>
<%--增强for循环--%>
<c:set var="arr" value="{1,3,5,7}" scope="request"></c:set>
<c:forEach var="i" items="${arr}">
${i}
</c:forEach>