JSTL标签库

JSTL简介

  1.jstl的概述

    * apache的东西,依赖EL

    * 使用jstl需要导包:jstl1.2.jar

    * 四大库

      > core:核心库,重点

      > fmt:格式化:日期、数字

      > sql:过时

      > xml:过时

  2.导入标签库

    * jar包

    * jsp页面中:<%@taglib prefix="前缀" uri="路径"%>

core-->C标签

 out和set

    * <c:out>:输出

      - value:可以是字符串常量,也可以是EL表达式

      - default:当输出的内容为null时,会输出default指定的值

      - escapeXml:默认值为true,表示转义!

    * <c:set>:设置(创建域的属性)

      - var:变量名

      - value:变量值,可以是EL表达式

      - scope:域,默认page,可选值 

    

 remove

    * <remove>:删除域变量

      - var:变量名

      - scope:如果不给出scope,表示删除所有域中的该名称变量;如果指定了域,那么只删除该域的变量

 url

    * value:指定一个路径!他会在在路径前面自动添加项目名。

      - <c:url value="/index.jsp"/>,  他会输出/review/index.jsp

    * 子标签:<c:param>,用来给url后面添加参数

      - <c:url value="/index.jsp">

        <c:param name="username" value="张三"/>      可以对参数进行url编码!

        </c:url>

    * var:指定变量名,一旦添加了这个属性,那么url标签就不会输出到页面,而是把生成url保存到域中

  

 

 if(对应java中的if语句)

    * <c:if test="布尔类型">...</c:if>,当test为值时,执行标签内容!

  

 choose(对应java中的if/ else if / ... / else)

    <c:choose>

      <c:when test="">...<c:when>

      <c:when test="">...<c:when>

      <c:when test="">...<c:when>

        ...

      <c:otherwise>...<c:otherwise>

    <c:choose>

  

  forEach

    它用来循环遍历数组、集合!

    它还可以用计数方式来循环!

    计数方式:

      for(int i = 1; i<=10;i++){

        ...

      }

      <c:forEach var="i" begin="1" end="10" step="2">

        ${i}

      </c:forEach>

      属性:

        * var:循环变量

        * begin:设置循环变量开始的位置

        * 设置循环变量结束的位置

        * 设置步长!等同于java中的i++,i+=2

    用来输出数组和集合:

      <c:forEach items="${strs }" var="str">

        ${str }<br/>

      </c:forEach>

      属性:

        * items:指定要循环的对象,他可以是一个数组或一个集合

        * var:把数组或集合中的每个元素赋值给var指定的变量

    

      注意:1.可以用${strs }全域查找,也可以${requestScope.strs}指定域查找

         2.items="${strs}此处不能有空格"

    循环状态:

      可以使用varStatus来创建循环状态变量:

      循环状态变量有如下属性:

        * count:循环元素的个数

        * index:循环元素的下标

        * first:是否为第一个元素

        * last:是否为最后一个元素

        * current:当前元素

    

fmt标签

  它是格式化库

  * <fmt:formatDate value="" pattern="">

    value:指定一个Date类型的变量

    pattern:用来指定输出的模板!例如:yyyy-MM-dd HH:mm:ss

  

 

  * <fmt:formatNumber value="${num1}" pattern="0.00">

    保留小数点后两位,四舍五入!如果不足两位,以0补位!

  * <fmt:formatNumber value="${num1}" pattern="#.##">

    保留小数点后两位,四舍五入!如果不足两位,不补位!

      

  

 

posted @ 2018-08-05 11:19  cmlx  阅读(105)  评论(0)    收藏  举报