JSP标签、JSTL标签、EL表达式

maven依赖

<!-- https://mvnrepository.com/artifact/javax.servlet.jsp.jstl/jstl-api -->
<!--    jstl表达式的依赖-->
    <dependency>
      <groupId>javax.servlet.jsp.jstl</groupId>
      <artifactId>jstl-api</artifactId>
      <version>1.2</version>
    </dependency>
<!-- https://mvnrepository.com/artifact/taglibs/standard -->
<!--    standard标签库-->
    <dependency>
      <groupId>taglibs</groupId>
      <artifactId>standard</artifactId>
      <version>1.1.2</version>
    </dependency>

EL表达式作用: ${ }

  • 获取数据
  • 执行运算
  • 获取web开发的常用对象
  • 调用java方法 (非重点)

JSP标签

<%--    jsp:forward page=""    跳转另外的页面--%>
<%--http://localhost:8080/jsptag.jsp?name=cong&age=20--%>
<jsp:forward page="jsptag2.jsp">
    <jsp:param name="name" value="cong"/>
    <jsp:param name="age" value="20"/>
</jsp:forward>

JSTL表达式

JSTL标签库的使用就是为了弥补HTML标签的不足;他自定义了许多标签,可以供我们使用,标签的功能和java代码一样!

格式化标签
SQL标签
XML标签

核心标签(重点掌握)

JSTL标签库使用步骤

  • 引入对应的taglib
  • 使用其中的方法
  • 在Tomcat也需要引入jstl的包,否则也会报错JSTL解析错误

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%--引入JSTL核心标签库,我们才能使用JSTL标签--%>
<%--c 表示core标签,当然还有其他标签--%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib prefix="x" uri="http://java.sun.com/jsp/jstl/xml"%>
<html>
<head>
    <title>Title</title>
</head>
<body>

<h4>if测试</h4>

<hr>

<form method="get" action="coreif.jsp">
    <%--
    EL表达式获取表单中的数据
    ${param.参数名}
    --%>
    <input type="text" name="username" value="${param.username}">
    <input type="submit" value="登录">
</form>

<%--判断如果提交的用户名是管理员,则登录成功--%>
<c:if test="${param.username=='admin'}" var="isAdmin">
    <c:out value="管理员欢迎您" />
</c:if>

<c:out value="${isAdmin}" escapeXml="false" />

</body>
</html>

c:choose

<%@ 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>
<%--定义了一个变量score,值为95 --%>
<c:set var="score" value="95" />

<c:choose>
    <c:when test="${score >= 90}">
        你的成绩为优秀
    </c:when>
    <c:when test="${score >= 80}">
        你的成绩为良好
    </c:when>
    <c:when test="${score >= 70}">
        你的成绩为一般
    </c:when>
    <c:otherwise>
        你的成绩为差
    </c:otherwise>
</c:choose>

</body>
</html>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ page import="java.util.ArrayList" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>

<%
    ArrayList<String> people = new ArrayList<>();
    people.add(0,"张三");
    people.add(1,"李四");
    people.add(2,"王五");
    people.add(3,"赵六");
    request.setAttribute("list", people);
%>

<%--
var ,每一次遍历出来的变量
items , 要遍历的对象
begin,   那里开始
end,    到哪结束
step,  步长
--%>

<c:forEach var="person" items="${list}">
    <c:out value="${person}" /> <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>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值