JSTL 总结

1. JSTL:JSP标准标签库。由Sun制定的一套标准自定义标签的规范。实现了Web页面中的通用功能。
  1) 版本:JSTL1.1需要支持J2EE1.4的Web容器。还需要添加相应的类库。
           JSTL1.2是JavaEE5.0规范的一部分,JavaEE5.0的Web容器都必须提供JSTL1.2的实现。

2. JSTL1.1的安装和使用:下载Apache组织提供的实现包(jstl.jar,standard.jar)并添加到类路径中。

3. JSTL1.1的标签库分类:
  1) 核心标签库      http://java.sun.com/jsp/jstl/core        c
     国际化和格式化  http://java.sun.com/jsp/jstl/fmt         fmt
     函数库          http://java.sun.com/jsp/jstl/functions   fn
     数据库操作      http://java.sun.com/jsp/jstl/sql         sql
     XML操作         http://java.sun.com/jsp/jstl/xml         x

4. 核心标签库
  1) 通用标签:
   ★a) <c:out value="值或EL表达式" [default="默认值"] [escapeXml="true|false"]/>
     b) <c:set var="变量名" value="值或EL表达式" [scope="page|request|session|application"]/>
     c) <c:remove var="变量名" [scope="page|request|session|application"]/>
     d) <c:catch var="变量名">....</c:catch>
  2) 条件标签:
   ★a) <c:if test="布尔值或EL表达式" [var="变量名"] [scope="..."]>主体</c:if>
   ☆b) <c:choose>
           <c:when test="布尔值或EL表达式">主体</c:when>
           <c:when test="布尔值或EL表达式">主体</c:when>
           <c:otherwise>主体</c:otherwise>
        </c:choose>
  3) 迭代标签:
   ★a) <c:forEach items="${要遍历的集合}" var="集合中元素的临时名字" varStatus="迭代状态对象变量">
           ${迭代状态变量.count}, ${临时名字}
        </c:forEach>
     b) <c:forTokens items="要分隔的字符串" var="临时名" delims="分隔符列表">
           ${临时名}
        </c:forTokens>

  4) 与URL相关的标签:
    a) <c:import url="目标URL" [context=".."] [var=""]/>  把目标路径的资源包含到当前页面
    b) <c:redirect url="目标URL" [context=".."] [var=""]/>  重定向,但浏览器地址栏不出现新地址
  ☆c) <c:url value="要进行URL重写的URL" [var="变量名"] [scope=".."]>
           [<c:param name="参数名" value="参数值"/>]
       </c:url>
       Servlet: String value = URLDecode.decode(request.getParameter("参数名"), "utf-8");

5. 国际化和格式化标签库:支持I18N
  1) <fmt:setBundle baseName="资源文件的基本名" [var="变量名"] [scope="..."]/> //根据本地环境信息绑定资源文件到指定作用域,默认存放在pageContext
  2) <fmt:bundle baseName="资源文件的基本名">主体</fmt> //根据本地环境信息绑定资源文件,只能在标签主体中使用
  3) <fmt:message key="消息键" bundle="资源对象变量名" [var=".."]>主体</fmt:message> //从指定资源信息对象中取出指定键对应的值
     <fmt:param value="值"/> 给消息键对应的值中的占位符传值
  4) <fmt:setLocale value="代表本地环境信息的字符串" scope=".."/>
  5) 资源文件的命名规范: 基本名_语言代号_地区代号.properties。默认使用的资源文件为:基本名.properties
     本地环境信息的命名规范:语言代号_地区代号。语言代号为两个小写字母,地区代号为两位大写字母。
        如:zh_CN、zh_TW、zh_HK、en_US
☆6) <fmt:formatNumber value="字符串或数值类型"
         type="number|currency|percent"
         pattern="数字模式串"
         var="变量名"
         scope=".."/>
☆7) <fmt:formatDate value="java.util.Date类型对象"
         type="date|time|both"
         dateStyle="default|short|medium|long|full"
         timeStyle="default|short|medium|long|full"
         pattern="日期时间模式串"
         var="变量名"
         scope=".."/>

6. 函数标签库:只通过在EL表达式中使用,如: ${fn:length("string")}
  1) fn:contains(string, substring)
  2) fn:containsIgnoreCase(string, substring)
  3) fn:endsWith(string, substring)
  4) fn:escapeXml(str)
  5) fn:indexOf(str, str2)
  6) fn:join(数组, "连接符")
☆7) fn:length(数组或集合的长度)
  8) fn:replace(string, oldStr,newStr)
  9) fn:split(string "分隔符")
  10)fn:startsWith()
  11)fn:substring(string, start, end)
  12)fn:substringAfter()
  13)fn:substringBefore()
  14)fn:toLowerCase()
  15)fn:toUpperCase()
  16)fn:trim()
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值