zoukankan      html  css  js  c++  java
  • JSTL标签库

    1.JSTL

         定义:JSP Standard Tag Library,JSP标准标签库。

         作用:1.JSTL标签库的使用是为类弥补html表的不足,规范自定义标签的使用而诞生的。

                  2.尽可能避免在jsp页面中出现java逻辑代码。

    2.如何在JSP中使用JSTL

        首先,导入standard.jar和jstl.jar两个jar包。

        其次,在JSP页面中添加对JSTL的引用:<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>

    3.核心标签库

        JSTL的核心标签库标签共13个,从功能上可以分为4类:

        1>.表达式控制标签

             out标签、set标签、remove标签、catch标签。

        2>.流程控制标签

             if标签、choose标签、when标签、otherwise标签。

        3>.循环标签

             forEach标签、forTokens标签。

        4>.URL操作标签

             import标签、url标签、redirect标签。

    4.核心标签库的用法

        1>.<c:out>标签:用来显示数据对象(字符串、表达式)的内容或结果。相当于 <% out.println(“字符串")%> 或 <%=表达式%>

             【语法1】:<c:out value="要显示的数据对象" [escapeXml="true|false"] [default="默认值"]>         

             【语法2】:<c:out value="要显示的数据对象" [escapeXml="true|false"]>默认值</c:out>

                   value:指定要输出的变量或表达式。
                   escapeXml:设定是否转换特殊字符(如&lt、&gt等一些转义字符)
                   default:为默认输出结果。如果使用表达式得到的结果为null(注意与空区别),将会输出默认结果。

       2>.<c:set>标签:主要用于将变量存取于JSP范围中或JavaBean属性中。

             【语法1】<c:set value="值1" var="name1" [scope="page|request|session|application"]>

             【语法2】<c:set var="name2" [scope="page|request|session|application"]>

             【语法3】<c:set value="值3" target="JavaBean对象" property="属性名"/>

             【语法4】<c:set target="JavaBean对象" property="属性名">值4</c:set>

       3>.<c:remove>标签:主要用来从指定的JSP范围内移除指定的变量。

             【语法】<c:remove var="变量名" [scope="page|request|session|application"]/>

       4>.<c:if>标签:同程序中的if作用相同,用来实现条件控制。

             【语法1】<c:if test="条件1" var="name" [scope="page|request|session|application"]>

             【语法2】<c:if test="条件2" var="name" [scope="page|request|session|application"]>结果2</c:if>

             【参数说明】:
                    I、test属性用于存放判断的条件,一般使用EL表达式来编写。
                    II、var指定名称用来存放判断的结果,类型为true或false。
                    III、scope用来存放var属性存放的范围。

       5>.<c:choose>、<c:when>和<c:otherwise>标签:

             注意:这3个标签通常情况下是一起使用的,<c:choose>标签作为<c:when>和<c:otherwise>标签的父标签来使用。

       6>.<c:forEach>标签:该标签根据循环条件遍历集合(Collection)中的元素。

            <c:forEach var="name" items="Collection" varStatus="StatusName" begin="begin" end="end" step="step">
                    所有内容
            </c:forEach>

           【参数解析】:
                  I、var设定变量名用于存储从集合中取出元素。
                  II、items指定要遍历的集合。
                  III、varStatus设定变量名,该变量用于存放集合中元素的信息。
                  IV、begin、end用于指定遍历的起始位置和终止位置(可选)。

                  V、step指定循环的步长。

           【varStatus有4个状态属性】:

                 index:当前循环的索引值 count:循环的次数 frist:是否为第一个位置 last:是否为最后一个位置

    5.I18N格式标签库

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

           1>.数字日期格式化标签

                formatNumber标签、formatData标签、parseNumber标签、parseDate标签、timeZone标签、setTimeZone标签

           2>.读取消息资源。

                bundle标签、message标签、setBundle标签。

           3>.国际化。

                setlocale标签、requestEncoding标签。

    6.数字日期格式化标签 - 用法

           1>.<fmt:formatNumber>标签:该标签主要用来格式化数字。

               【语法】:<frm:formatNumber value="被格式化的数据"[type="number|currency|percent"] [var="name"]                      [scope=page|request|session|application] />

                number:数值 currency:金额 percent:百分比

           2>.<fmt:formatDate>标签:该标签主要用来格式化日期和时间。

    【语法】:<fmt: formatDate value="date" [type="time|date|both"]
                           [pattern="pattern"]
                    [dateStyle="default|short|medium|long|full"]
             [timeStyle="default|short|medium|long|full"]
             [timeZone="timeZone"]
             [var="name"]
             [scope="page|request|session|application"]
          />

         <fmt:formatDate value="${xx}" pattern="dd/MM/yyyy hh:mm aa"/>



  • 相关阅读:
    GIT配置及用法
    Web前端深思
    SPA解释:单页应用程序
    对 Sea.js 进行配置(一) seajs.config
    前端开发知识体系技能点【根据自我学习顺序】
    App性能提升方法
    浅谈Bootstrap自适应功能在Web开发中的应用
    《写给大家看的设计书》 读书笔记(三)
    《写给大家看的设计书》读书笔记(一)
    《写给大家看的设计书》读书笔记(二)
  • 原文地址:https://www.cnblogs.com/Lchao/p/6430494.html
Copyright © 2011-2022 走看看