Day07 动态页面技术(JSTL)

JSTL表达式概述

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

JSTL表达式-环境准备

  • (1)导入jar包
    在这里插入图片描述
  • (2)引入标签库
<%--引入jstl--%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core"   prefix="c"%>

JSTL表达式-if标签

  • (1)jstl的核心标签内容有很多,现在目前还常用的标签只有if、foreach标签。
  • (2)<c:if>标签
    起到java代码的判断的作用
  • (3)if标签属性介绍
    在这里插入图片描述
  • 示例
<%
    int a = 200;
    int b = 500;
    request.setAttribute("a", a);
    request.setAttribute("b", b);
%>
<%--
   test:测试条件成立
   var:  用来保存条件的结果,true或者false
   scope: 表示将结果存到哪个域中
--%>
<c:if test="${a > b }" var="bl" scope="session">
    <h1 style="color: green">a大于b</h1>
</c:if>
<c:if test="${!(a > b) }">
    <h1 style="color: red">a小于b</h1>
</c:if>

JSTL表达式-for标签

  • (1)forEach标签
    起到java代码的for循环作用
  • (2)forEach标签属性介绍
    在这里插入图片描述
<%--
     for标签:
        1:普通for
         for(int i=0; i<5; i++)
         begin: 表示索引开始
         end  :表示索引结束,包含结束值
         var  :循环变量 i, 与begin+step一同增长, jsp会自动的将该值存放在pageContext域中
         step :每一次循环的增量
 --%>
    <%
        int num = 10;
        request.setAttribute("num",num);
    %>
    <c:forEach begin="1" end="${num}" step="1" var="i">
        <h1 color="green">HelloWorld + ${i}</h1>
    </c:forEach>
<hr/>
<%--
        2:增强for
         for( String str: list)

         items="${list}" 从域中根据list这个键获取集合对象
         var="str"       每次循环时,jstl会自动将集合中的元素赋给str
                         每次循环时,jstl会自动将str的值存入pageContext域
         varStatus="vs"  这个参数会记录当前循环的一些状态信息
         vs.count 返回值为number  可以获取当前循环的次数
         vs.index 返回值为number  获取集合成员的索引(下标从0开始) 
         vs.first 返回值为boolean 现在指到的集合成员是否为第一个成员 
         vs.last  返回值为boolean 现在指到的集合成员是否为最后一个成员 
--%>
    <%
        ArrayList<String> list = new ArrayList<>();
        list.add("str1");
        list.add("str2");
        list.add("str3");
        request.setAttribute("list",list);
    %>
    <c:forEach items="${list}" var="str" varStatus="vs">
        <h1 color="red">${str},现在是第${vs.count}次循环</h1>
    </c:forEach>
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 10
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值