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

    ->JSTL的使用和EL表达式是分不开的

    ->JSTL标签库分为5类

      1.核心标签库(这里只介绍该标签库)

      2.I18N格式化标签库

      3.SQL标签库

      4.XML标签库

      5.函数标签库

    ->核心标签库氛围4种标签

      1.表达式控制标签:out, set, remove, catch

      2.流程控制标签:if, choose, when, otherwise

      3.循环标签库:forEach, forTokens

      4.URL标签库:import, url, redirect

    ->核心标签库引入代码

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

    -><c:out>标签:用来显示数据对象(字符串或表达式)

      Java语言:<% out.print("字符串") %>,<%= 表达式 %>

      标签语言:<c:out value="字符串" />,<c:out value="表达式" />

      两种语法:<c:out value="要输出的对象" default="默认值" escapeXml="true | false" />

           <c:out value="要输出的对象" escapeXml="true | false" >默认值</c:out>

      -value:指定要输出的对象

      -escapeXml:设定是否转义特定字符,默认为true,不转义,反之false为转义

      -default:当El表达式为null时(注意null与空的区别),会显示默认值

    -><c:set>标签:将变量值存储与JSP作用域范围中或JavaBean属性中

      四种语法:<c:set scope="page | request | session | application" var="name1" value="value1" />

           <c:set scope="page | request | session | application" var="name2">value2</c:set>

           <c:set target="JavaBean" property="name3" value="value3" />

           <c:set target="JavaBean" property="name4">value4</c:set>

      -前两种含义:把变量名为"name1","name2"的值为"value1","value2"的变量存储在指定的scope作用范围内

      -后两种含义:把"value3","value4"赋值给JavaBean对象的"name3","name4"属性

    -><c:remove>标签:从指定的JSP范围内移除指定的变量

      <c:remove var="变量名" scope="page | request | session | application" />

    -><c:catch>标签:用来处理可能发生异常的代码,并将异常信息存储,主要用于标签语言中产生的异常

      <c:catch var="name1" >容易产生异常的代码</c:catch>

      -var:定义存储错误信息的变量名,可以省略,只不过无法输出错误信息

    -><c:if>标签:与java语言中的if作用相同,实现条件控制

      语法:<c:if test="conditions" var="name" scope="page | request | session | application">内容</c:if>

      -test:存放判断条件,一般用EL表达式编写

      -var:用来存放判断的结果类型:true | false

      -scope:作用范围

    -><c:choose>,<c:when>和<c:otherwise>标签:通常一起使用,类比java雨中的if...else...

      语法:<c:choose>

          <c:when test="condition">//业务逻辑</c:when>

          <c:when test="condition">//业务逻辑</c:when>

          ...

          <c:otherwise>//业务逻辑</c:otherwise>

         </c:choose>

    -><c:forEach>标签:根据循环条件实现循环遍历

      语法:<c:forEach var="name" items="object" begin="begin" end="end" step="step" varStatus="statusName">内容</c:forEach>

      -var:设定变量名用于存储循环便利出的元素

      -items:指定要遍历的对象

      -begin,end,step:设定遍历起点,终点和步长

      -varStatus:设定变量名用于存放元素信息,信息状态如下表:

    属性名 类型 说明
    index int 当前循环的索引值
    count int 循环的次数
    first boolean 是否为第一个位置
    last boolean 是否为最后一个位置

    -><c:forTokens>标签:该标签用于浏览字符串,并根据指定字符串进行截取

      语法:<c:forTokens items="Object" delims="character" var="name" begin="begin" end="end" step="step" varStatus="statusName">//输出内容</c:forTokens>

      -items:指定被迭代的字符串

      -delims:指定使用的分隔符

      -var:定义用来存储遍历出来元素的变量

      -begin,end,step:指定遍历开始,结束的位置和步长

      -varStatus:与forEach中的varStatus作用相同

    -><c:import>标签:该标签可以把其他静态或动态文件包含到本JSP页面(可包含其他web应用中的文件,甚至是网络上的资源)

      语法:<c:import url="url" context="context" var="name" scope="page | request | session | application" varReader="name" charEncoding="encoding">//内容</c:import>

      -url:被导入资源的URL路径

      -context:当使用相对路径方法指定外部文件时,这个属性指定的是外在文件的名称

      -var:以String类型存入被包含文件的内容

      -scop:作用范围

      -charEncoding:被导入文件的编码格式

      -varReader:以Reader类型存储被包含文件的内容

    -><c:redirect>标签:用来实现请求的重定向,与<jsp:redirect>类似

      两种语法:<c:redirect url="url" context="context" />

           <c:redirect url="url" context="context">

            <c:param name="paramName" value="value" />

          </c:redirect>

    -><c:url>标签:用来重写url地址

      两种语法:<c:url value="value" context="context" var="name" />

           <c:url value="value" context="context" var="name">

            <c:param name="paramName" value="value" />

           </c:url>

  • 相关阅读:
    Vue 插件写法
    js创建对象的多种方式及优缺点
    webpack原理与实战
    发布高性能迷你React框架anu
    Windows 同一时候开启核心显卡与独立显卡(不接显示器启动核芯显卡)
    基于QT和OpenCV的人脸检測识别系统(1)
    Cocos2d-x中背景音乐播放暂停与继续
    使用Xcode和Instruments调试解决iOS内存泄露
    Shell 命令行快捷键
    ExtJS学习-----------Ext.Array,ExtJS对javascript中的Array的扩展(实例)
  • 原文地址:https://www.cnblogs.com/52xuanxuan/p/5996587.html
Copyright © 2011-2022 走看看