Loading

JSTL的核心标签库使用

1. jstl标签的基本概述

JSTL(JSP Standard Tag Library),JSP标准标签库,可以嵌入在jsp页面中使用标签的形式完成业务逻辑等功能。jstl出现的目的同el一样, 也是要放到jsp页面中的脚本代码。JSTL标准标准标签库有5个子库,但随着发展,目前常使用的是它的核心库Core

标签库 标签库的URI 前缀
Core http://java.sun.com/jsp/jstl/core c
I18N (过时了) http://java.sun.com/jsp/jstl/fmt fmt
SQL (过时了) http://java.sun.com/jsp/jstl/sql sql
XML (过时了) http://java.sun.com/jsp/jstl/xml x
Functions (过时了) http://java.sun.com/jsp/jstl/functions fn

2. jstl标签的安装

导入jar包

javax.servlet.jsp.jstl.jar
standard.jar

使用taglib指令在jsp页面导入要使用的jstl标签库

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

属性:

  • prefix 标签库的前缀
  • uri 标签库的地址

在jsp书写"<c:",看到如下提示,说明安装成功:

在这里插入图片描述

3. 常用的jstl标签

jstl的核心标签内容有很多,现在目前还常用的标签只有if、foreach标签。

3.1 if标签

if标签作用

起到java代码的判断的作用

if标签属性介绍

在这里插入图片描述

  • test:判断是否执行标签内的内容(true——执行标签中的内容,false,不执行)。

  • var:用来保存test属性的结果(使用var属性给他取个名字),这个结果可以保存到指定的web域中, 默认保存在pageContext域。

  • scope:指定保存数据的到哪个web域。

eg:

  1. 使用if标签控制标签是否出现

    <%
        pageContext.setAttribute("num",5);
    %>
    <c:if test="${num >5}">
        <div>num >5</div>
    </c:if>
    <c:if test="${num <=5}">
        <div>num <=5</div>
    </c:if>
    

    在这里插入图片描述

  2. 将判断结果 保存到var属性中, 并指定存到的域对象

    <c:if test="${1>2}" var="bool" scope="page">
    </c:if>
    ${bool}
    

    在这里插入图片描述

3.2 forEach标签

3.2.1 forEach标签作用

起到java代码的for循环作用

3.2.2 forEach标签属性介绍

在这里插入图片描述

3.2.3 数字循环

var:在不循环对象的时候,保存的是控制循环的变量;
begin:设置循环的开始
end:设置循环的结束
step:设置步长

<c:forEach begin="1" end="5" step="1" var="a">
   	<div>${a}</div>
</c:forEach>

在这里插入图片描述

3.2.4 列表循环

var:在循环对象的时候,保存的是被循环对象中的元素
items:指定要被循环的对象
varStatus:保存了当前循环过程中的信息(循环的开始、结束、步长、次数等)

<%
    String[] strings = {"i","love","u"};
    pageContext.setAttribute("strings",strings);
%>

<c:forEach items="${strings}" var="strItem" varStatus="vs">
    <div>${strItem}---${vs.index}--${vs.count}</div>
</c:forEach>

在这里插入图片描述

posted @ 2021-03-25 22:31  克豪  阅读(215)  评论(0)    收藏  举报