获取数据
执行运算
获取web开发的常用对象
<!-- https://mvnrepository.com/artifact/javax.servlet.jsp.jstl/jstl-api --> <dependency> <groupId>javax.servlet.jsp.jstl</groupId> <artifactId>jstl-api</artifactId> <version>1.2</version> </dependency> <!-- https://mvnrepository.com/artifact/taglibs/standard --> <dependency> <groupId>taglibs</groupId> <artifactId>standard</artifactId> <version>1.1.2</version> </dependency>
<%-- jsp:include--%> <jsp:forward page="jsptest.jsp"> <jsp:param name="name" value="lantian"/> <jsp:param name="age" value="22"/> </jsp:forward>
<%--取出参数--%> 姓名:<%=request.getParameter("name")%> 年龄:<%=request.getParameter("age")%>
JSTL标签库的使用是为了弥补HTML标签的不足
核心标签
核心标签是最常用的 JSTL标签。引用核心标签库的语法如下: <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
标签 描述 <c:out> 用于在JSP中显示数据,就像<%= ... > <c:set> 用于保存数据 <c:remove> 用于删除数据 <c:catch> 用来处理产生错误的异常状况,并且将错误信息储存起来 <c:if> 与我们在一般程序中用的if一样 <c:choose> 本身只当做<c:when>和<c:otherwise>的父标签 <c:when> <c:choose>的子标签,用来判断条件是否成立 <c:otherwise> <c:choose>的子标签,接在<c:when>标签后,当<c:when>标签判断为false时被执行 <c:import> 检索一个绝对或相对 URL,然后将其内容暴露给页面 <c:forEach> 基础迭代标签,接受多种集合类型 <c:forTokens> 根据指定的分隔符来分隔内容并迭代输出 <c:param> 用来给包含或重定向的页面传递参数 <c:redirect> 重定向至一个新的URL. <c:url> 使用可选的查询参数来创造一个URL
JSTL标签使用步骤
c:if
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>Title</title> </head> <body> <h4> if测试</h4> <hr/> <form action="core.jsp" method="get"> <%-- EL表达式获取表单中的数据 ${param.参数名} --%> <input type="text" name="username" value="${param.username}"> <input type="submit" value="登录"> </form> <%--判断如果提交的用户名是管理员,则登录成功--%> <c:if test="${param.username=='admin'}" var="isadmin" scope="application"> <c:out value="欢迎管理员登陆"/> </c:if> <%--自闭和标签--%> <c:out value="${isadmin}"/> </body> </html>
c:foreach
<%@ page contentType="text/html;charset=UTF-8" language="java" %> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <html> <head> <title>Title</title> </head> <body> <% ArrayList<String> people = new ArrayList<>(); people.add(0,"张三"); people.add(1,"赵四"); people.add(2,"王五"); people.add(3,"赵六"); people.add(4,"田七"); request.setAttribute("list",people); %> <%-- var, 每一次遍历出来的变量 items 要遍历的对象 begin 开始 end 结束 step 步长 --%> <c:forEach var="people" items="${list}"> <c:out value="${people}"/> <br/> </c:forEach> <hr/> <c:forEach var="people" items="${list}" begin="1" end="3" step="2" > <c:out value="${people}"/> <br> </c:forEach> </body> </html>