0%

JSTL标签库

JSTL标签库


简介

JSTL是apache对EL表达式的扩展(也就是说JSTL依赖EL),JSTL是标签语言,JSTL标签使用以来非常方便,它与JSP动作标签一样,只不过它不是JSP内置的标签,需要我们自己导包,以及指定标签库而已!

作用

用来提升在JSP页面的逻辑代码的编码效率,使用标签来替换逻辑代码的直接书写,高效,美观,整洁,易读。

使用JSTL

JSTL的核心标签库(重点)

JSTL的格式化标签库(讲解)

JSTL的SQL标签库(了解)

JSTL的函数标签库(了解)

JSTL的XML标签库(了解)

JSTL的核心标签库

  1. 导入jar包

  2. 声明jstl标签库的引入(核心标签库)

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

    基本标签:

    ​ < c:out value="数据" default="默认值"/>

    ​ 数据可以为常量值也可以是EL表达式

    ​ 作用:将数据输出给客户端

    ​ < c:set var="键名" value="数据" scope="作用域对象(page/request/session/application)"/>

    ​ 作用:存储数据到作用域对象中

    ​ < c:remove var="键名" scope="作用域对象"/>

    ​ 作用:删除作用域中的指定键的数据

    ​ 注意:如果在不指定作用域的情况使用该标签删除数据,会将四个作用域对象中的符合要求的数据全删掉

    逻辑标签:

     < c:if test="${表达式}" >前端代码< /c:if >

    ​ 作用:进行逻辑判断,相当于java代码的单分支判断

    ​ 注意:逻辑判断标签需要依赖于EL的逻辑运算,也就表达式中涉及到数据必须从作用域中获取

    ​ < c:choose>

    ​ < c:when test="">执行内容< /c:when>

    ​ 。。。

    ​ < c:when test="">执行内容< /c:when>

    ​ < c:otherwise>执行内容< /c:otherwise>

    ​ < /c:choose>

    ​ 作用:用来进行多条件的逻辑判断,类似java的多分支语句

    ​ 注意:条件成立只会执行一次,都不成立则执行otherwise

    循环标签:

    ​ < c:forEach begin="循环开始位置(1)" end="循环结束位置(4)" step="设置步长(2)" varStatus="变量(声明变量记录每次循环的数据(角标、次数、是否是第一次循环、是否是最后一次循环))">

    ​ 循环体

    ​ < /c:forEach>

    ​ 作用:循环内容进行处理

    ​ 注意:数据存储在作用域中,需要使用EL表达式获取(例如:\({vs.index}--\){vs.count}--\({vs.first}--\){vs.last})

    ​ < c:forEach items="要遍历的对象(${list})" var="值(str)">

    ​ 循环体

    ​ < /c:forEach>

  4. 相关网站推荐:http://www.runoob.com/jsp/jsp-jstl.html