1.下载jstl.jar,引入jar
http://central.maven.org/maven2/javax/servlet/jsp/jstl/jstl/1.2/
2.jsp头部引入
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
3.实例
1)c:out标签
<b>c:out标签等价</b>
<%="c:out标签"%>
<%
out.println("c:out标签");
%>
<c:out value="c:out标签"/>
2)c:if标签
<b>c:if标签等价</b>
<%
if (true){
}
%>
<c:if test="${true}">
</c:if>
3)c:choose、c:when、c:otherwise组合标签
<%
if (true){
}else {
}
%>
<c:choose>
<c:when test="${true}"></c:when>
<c:otherwise></c:otherwise>
</c:choose>
4)c:forEach标签
<b>c:forEach标签</b>
<%
for (User user : users) {
}
%>
<c:forEach var="user" items="${users}" >
${user.name}
</c:forEach>
@WebServlet("/jstl")
public class JSTLTest extends HttpServlet {
@Override
protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
List<String> lists = new ArrayList<>();
lists.add("string1");
lists.add("string2");
lists.add("string3");
lists.add("string4");
lists.add("string5");
request.setAttribute("lists",lists);
//为什么这里用转发,不用重定向
//因为重定向到jsp去request对象携带的数据失效
request.getRequestDispatcher("jstl.jsp").forward(request,response);
}
}
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%--
Created by IntelliJ IDEA.
User: Administrator
Date: 2019/3/19/019
Time: 10:48
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>$Title$</title>
</head>
<body>
<c:forEach items="${lists}" var="list">
${list}
</c:forEach>
</body>
</html>