day07-Jstl标签库

day07-Jstl标签库

Jstl标签库的介绍

在这里插入图片描述
(1)什么是jstl
JSTL(JSP Standard Tag Library),JSP标准标签库,可以嵌入在jsp页面中使用标签的形式完成业务逻辑等功能。
(2) jstl有什么意义?
jstl出现的目的同el一样也是要替换jsp页面中的脚本(java)代码。
(3) JSTL标准标准标签库有5个子库,目前常使用的是他的核心库

在这里插入图片描述
第一个标签库里的两个标签比较重要
标签特点:有开始有结束

JSTL表达式-环境准备

(1)导入jar包
在这里插入图片描述
记得项目要识别jar文件,右击-》add as libray

(2)引入标签库

<%--引入jstl--%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core"   prefix="c"%>

taglib:专门用来引入标签库的
c:是前缀,为了与html代码区别开

Jstl-if标签

(1)jstl的核心标签内容有很多,现在目前还常用的标签只有if、foreach标签。
(2)<c:if>标签
起到java代码的判断的作用
(3)if标签属性介绍

没有else

<%--
  Created by IntelliJ IDEA.
  User: Administrator
  Date: 2020/9/16
  Time: 15:32
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core"   prefix="c"%>
<html>
<head>
    <title>Title</title>
</head>
<body>
    <%
        int age=20;
        request.setAttribute("age",age);
    %>
    <%--判断是否成年--%>
  <c:if test="${age>18}">
      <font color="red">成年</font>
  </c:if>
    <c:if test="${age<18}">
        <font color="red">未成年</font>
    </c:if>

</body>
</html>

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
相当于s=request.setAttribute(“bl”,"${a>b}的值"}

JSTL表达式-for标签

(1)forEach标签
起到java代码的for循环作用
(2)forEach标签属性介绍

在这里插入图片描述
在这里插入图片描述
页面不能写以上图中的逻辑代码,所以用c:forEach标签

<%--
     for标签:
        1:普通for
         for(int i=0; i<5; i++)
         begin: 表示索引开始
         end  :表示索引结束,包含结束值
         var  :循环变量  i,  jsp会自动的将该值存放在pageContext域中
         step :每一次循环的增量
        2:增强for
 --%>
        <%
            request.getParameter("username");

            int num = 10;
            request.setAttribute("num", num);
        %>
        <c:forEach begin="0" end="${num}" var="i" step="1">
                <h1 style="color: red;">helloword${i}</h1>
        </c:forEach>
  <hr />
  <%--  增强for  --%>

        <%
            ArrayList<String> list = new ArrayList<String>();
            list.add("baoqiang1");
            list.add("baoqiang2");
            list.add("baoqiang3");
            request.setAttribute("list", list);
        %>
        <%--
           for( String str: list)

           items="${list}" 从域中根据list这个键获取集合对象
           var="str"       每次循环时,jstl会自动将集合中的元素赋给str
                           每次循环时,jstl会自动将str的值存入pageContext域
           varStatus="vs"  这个参数会记录当前循环的一些状态信息
                    vs.count  可以获取当前循环的次数
        --%>
        <c:forEach items="${list}" var="str" varStatus="vs">
             <%--${str}--%>
            现在是第${vs.count}次循环<br/>
        </c:forEach>

        <%
            ArrayList<User> list2= new ArrayList<User>();
            list2.add(new User("liuyan1",33,"female",new Birthday(1991,12,21)));
            list2.add(new User("liuyan2",34,"female",new Birthday(1992,12,21)));
            list2.add(new User("liuyan3",38,"female",new Birthday(1993,12,21)));
            request.setAttribute("list2", list2);
        %>
        <c:forEach items="${list2}" var="user">
                ${user.name} ----${user.birthday.year}<br/>
        </c:forEach>

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值