JSTL——jstl标签简介

1、jstl简介以及jstl标签库导入

1.jstl全称Jsp Standarded Tag Library,它可以使用标签取代java代码(代码脚本的内容)。
2.jstl使用步骤:

  • 导入jar包,你可以在web-INF目录下建一个lib包,将两个jar包导入
    链接:https://pan.baidu.com/s/1l9TQQPkar9i0IHM7tgFfNg
    提取码:crw9在这里插入图片描述
  • 在jsp代码中写一个taglib指令引入资源库,完成之后就可以使用jstl代码了
    <%@ taglib prefix=“c” uri=“http://java.sun.com/jsp/jstl/core” %>

2、set标签

set标签主要是往几个域中保存数据,这里以request域为例
set的几个属性:

  • scope:表示在哪个域里面保存
  • var:表示key是多少
  • value:表示存入的数据
<%@ 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 bgcolor="#008b8b">
        保存之前:${requestScope.key1}<br>
        <c:set scope="request" var="key1" value="value1"/>
        保存之后:${requestScope.key1}
</body>
</html>

在这里插入图片描述
可以看到使用set向request域输入数据

3、if标签

if标签主要用来做if判断,域java不同的是,它没有else语句
格式为: <c:if test=“判断条件”>满足条件输出内容</c:if>
text表示判断的条件

<%@ 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 bgcolor="#008b8b">
    <c:if test="${12 > 10}">
        <h3>12 > 10</h3>
    </c:if>
    <c:if test="${12 < 10 }">
        <h3>12 < 10</h3>
    </c:if>
</body>
</html>

在这里插入图片描述

4、choose,when标签

这个标签相当于c语音里面的switch case default语句,与Switch语句不同的是它里面没有break语句,满足当前条件之后直接跳出
具体格式:
<c:choose>
<c:when test=“判断语句”>满足当前条件输出</c:when>
<c:otherwise>不满足上面所有条件输出</c:otherwise>
</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 bgcolor="#008b8b">

        <%  request.setAttribute("age",17); %>
        <c:choose>
            <c:when test="${requestScope.age > 50}">
                <h2>你现在大于50岁了</h2>
            </c:when>
            <c:when test="${requestScope.age < 50 && requestScope.age > 40}">
                <h2>你现在40-50</h2>
            </c:when>
            <c:when test=" ${requestScope.age > 18 && requestScope.age < 40}">
                <h2>你现在18-40</h2>
            </c:when>
            <c:otherwise>
                <h2>未成年</h2>
            </c:otherwise>
        </c:choose>
</body>
</html>

在这里插入图片描述

5、forEach标签

1.forEach用来遍历数组
属性:
items:便利的数据
var:当前便利的数据
begin:开始下标
end:结束下标
step:表示遍历的步长,跳过几次,相当于for(i;i<n;i+=step)
格式为:
<c:forEach items=“遍历数组” var=“当前遍历的数据”>
</c:forEach>

<%@ 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 bgcolor="#00ffff">
        <% request.setAttribute("key01",new String[]{"value01","value02","value03","value04"});%>

        <c:forEach items="${requestScope.key01}" var="i">
            <h5>${i}</h5><br>
        </c:forEach>
</body>
</html>

在这里插入图片描述
2.forEach遍历list集合

<%@ page import="com.example.servlet.Student" %>
<%@ page import="java.util.List" %>
<%@ page import="java.util.ArrayList" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ 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>
    <style type="text/css">
        table{
            width: 500px;
            border: 1px solid red;
            border-collapse: collapse;
        }
        th , td{
            border: 1px solid red;
        }
    </style>
</head>
<body>
    <%
        List<Student> stu = new ArrayList<Student>();

        for(int i=1;i<11;i++){
            Student student = new Student();
            student.setId(i);
            student.setName("name"+i);
            student.setAge(18+i);
            student.setPhones("phone"+i);
            stu.add(student);
        }
        request.setAttribute("stu",stu);
    %>

    <table>
        <tr>
            <td>编号</td>
            <td>姓名</td>
            <td>年龄</td>
            <td>电话</td>
        </tr>
    <C:forEach items="${requestScope.stu}" var="stu">
        <tr>
            <td>${stu.id}</td>
            <td>${stu.name}</td>
            <td>${stu.age}</td>
            <td>${stu.phones}</td>
        </tr>
    </C:forEach>
    </table>
</body>
</html>

在这里插入图片描述

  • 3
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我没得冰阔落.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值