`
wangyuchuan520
  • 浏览: 15182 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

jstl总结

阅读更多

一、书

 《JSP设计》有一半内容在讲JSTL,很不错的参考书

二、版本

  要注意1.0.x和1.1.x两个版本,目前最新版分别为1.0.6和1.1.2

  1.1版比1.0版多了fn标签库(常用的字符串操作在里面,特别是length、substring、等用于显示的函数)

  各个版本都可以在apache网站下载得到

三、使用中注意的问题

  在仅支持JSP1.2规范的容器中,只能使用jstl 1.0版,所以fn就不能用了,很不爽。${1 + 2}必面都要写在<c:out value='${1 + 2}' />里。在支持JSP2.0规范的容器中,可以直接使用el表达式。

四、一些BUG

  在websphere 6.0(6.0.2.13版以前)中,有fn:length函数的BUG。只有打补丁了。

        在websphere 中,如<c:out value='${var == 0 ? "非" : "是" }'  />这样的句子会出问题,tomcat下刚运行很好。应该是:jstl只是一个规范,各个web容器对其实现不同的原因吧。

五、不错的地方

  易学易用,再也没有空值特别是null的困扰,页面不容易抛出error 500错误,感觉有点象在写ASP

  最常用的只有c、fn、fmt三个库

五、一些不爽的地方

  不支持自定义函数,很郁闷,我想可能是JSTL实现作用域的问题吧。

  只有<c:if test='${}' /></c:if>没有elseif的语法,两个以上有判断只有用

  <c:choose>
  <c:when test="{...}">1</c:when>
  <c:when test="{...}">2</c:when>
  <c:otherwise>3</c:otherwise>
  </c:choose>

       forEach中如果再有个奇偶判断就好了。

  上面几点,webwok中的OGNL就做得非常好。

      <forEach begin="begin" end="end" step="step">中end的值必须大于等于begin,step也就不能继负值了。

 六、常用代码:

<c:out value="${tpaMain.tpaInfo.content}" escapeXml="false" />

 <fmt:formatDate value="${tpaMain.add_date}" pattern="yyyy-MM-dd hh:mm" />

格式化日期、货币单位、数字是用得最多的

<c:forEach var="companyIndustry" items="${current.companyIndustryList}">
<c:out value='${companyIndustry.craft_name} ' escapeXml='false' />
</c:forEach>

forToken有时也很有用

输出复杂的多行多列的表格,可更改columnCount的值

<table width="98%" border="0" align="center" cellpadding="0" cellspacing="0">
  <c:set var="recordCount" value="0" />
  <c:set var="columnCount" value="2" />
  <c:out value='<tr>' escapeXml='false' />
  <c:forEach var="category" items="${categoryList}">
 <c:if test="${(recordCount mod columnCount) eq 0 && recordCount ne 0}">
   <c:out value='</tr><tr>' escapeXml='false' />
 </c:if>
 <c:out value='<td' escapeXml='false' />
 <c:out value='<span style="font-size: 14px;color: #db3210;font-weight: bold;">${category.craft_name}</span><br />' escapeXml='false' />
 <c:forEach var="current" items="${category.categoryList}">
 <a href="<c:url value='${param.url}?craft_index=${current.craft_index}' />"><c:out value="${current.craft_name}" escapeXml='false' /></a>&nbsp;
 </c:forEach>
 <c:out value='</td>' escapeXml='false' />
 <c:set var="recordCount" value="${recordCount + 1}" />
  </c:forEach>
 
  <c:set var="column" value="${recordCount mod columnCount}" />
  <c:if test="${column ne 0}">
 <c:forEach begin="${column}" end="${columnCount - 1}">
   <c:out value='<td>&nbsp;</td>' escapeXml='false' />
 </c:forEach>
  </c:if>
 
  <c:if test="${recordCount eq 0}">
   <c:forEach begin="0" end="${columnCount - 1}">
 <c:out value='<td>&nbsp;</td>' escapeXml='false' />
 </c:forEach>
  </c:if>
 
  <c:out value='</tr>' escapeXml='false' />
</table>
分享到:
评论

相关推荐

    jstl总结资料自己的学习笔记

    **JSTL(JavaServer Pages Standard Tag Library)详解** JSTL是JavaServer Pages标准标签库,它提供了一组预定义的标签,用于简化JSP页面的开发,使其更加结构化,可读性更强,同时也提高了代码的复用性和可维护性...

    总结EL和JSTL

    EL 表达式和 JSTL 的总结 EL 表达式是 Expression Language 的缩写,它是一种借鉴了 JavaScript 和 XPath 的表达式语言。EL 定义了一系列的隐含对象和操作符,使开发人员能够很方便地访问页面内容,以及不同作用域...

    JSTL常用标签总结

    本文将对JSTL中常用的标签进行总结。 首先,标签主要用于输出数据内容。在JSP中,它用于显示变量值、请求参数等信息。比如,如果我们想输出一个名为"name"的参数值,我们可以使用如下代码:${param.name}" default=...

    JSTL.rar_JSTL_JSTL下载

    总结来说,JSTL是JSP开发中不可或缺的一个工具,它通过提供一套强大的标签库,简化了JSP页面的编程,提高了开发效率和代码质量。通过学习和掌握JSTL,开发者可以更好地驾驭JSP页面,构建出更加高效、易维护的Web应用...

    jstl标签使用的总结心得

    JSTL,全称JavaServer Pages Standard Tag Library,是一个用于JSP页面的开源标签库,由Apache Jakarta项目维护。它旨在提高JSP开发的效率,通过提供一系列预定义的标签来简化常见任务,如控制流、迭代、XML处理、...

    jstl表达式的总结

    **JSTL(JavaServer Pages Standard Tag Library)表达式总结** JSTL是Java服务器页面标准标签库,它提供了一套用于处理常见JSP任务的标签,如迭代、条件判断、XML处理等,旨在减少Java代码在JSP页面中的使用,提高...

    jstl练习实例,学习JSTL

    **JSTL(JavaServer Pages Standard Tag Library)**是...总结,JSTL是提高JSP开发效率的有效工具,通过学习和实践"jstl练习实例",开发者可以深入理解和熟练掌握JSTL的各种标签和功能,从而在实际项目中更好地应用。

    JSTL C标签总结

    自己总结的JSTL 核心标签 附上一定的源码 希望对大家有用

    jstl-api-1.2.jar、jstl-impl-1.2.jar

    总结来说,JSTL是JSP开发的重要工具,提供了一系列标签,极大地提高了开发效率和代码的可读性。`jstl-api-1.2.jar`和`jstl-impl-1.2.jar`分别代表了其接口和实现,它们协同工作,使得开发者能够在JSP页面上方便地...

    jstl-impl-1.2.jar和jstl-api-1.2.jar

    总结一下,"jstl-impl-1.2.jar"和"jstl-api-1.2.jar"是Java Web开发中的重要组件,它们为JSP页面提供了强大的标签库支持,帮助开发者编写更简洁、更易于维护的代码。在部署和运行JSP应用时,确保这两个jar文件正确...

    JSTL教程

    **JSTL(JavaServer ...总结来说,JSTL是JSP开发中的一个重要工具,它通过提供一系列预定义的标签,提高了代码的可读性、可维护性和复用性,减轻了开发者的工作负担,尤其在大型Web应用程序中,JSTL的价值更为显著。

    jstl_jar包.zip

    总结起来,JSTL 是 JSP 开发中不可或缺的一部分,它通过提供一组标准标签,简化了常见的网页编程任务,增强了代码的可读性和可维护性。`jstl_jar包.zip` 文件提供了 JSTL 的 API 和实现,使得开发者能够在自己的项目...

    JSP EL JSTL 学习总结.rar

    结合“总结之JSP.docx”文档,可能涵盖了对JSP、EL和JSTL的综合概述,包括它们的概念、使用场景、优点和最佳实践。这些文档内容对于初学者理解JSP开发以及提升Java Web技能非常有帮助,特别是对于准备IBM的Java考试...

    jstl,jstl实例源码

    总结,JSTL作为Java Web开发中的一个重要工具,通过提供一系列的标签,极大地简化了JSP页面的编程,让代码更加清晰、简洁。了解并熟练掌握JSTL的使用,对于提高Web应用的开发效率和代码质量有着显著的效果。通过阅读...

    购物车(JSTL实现)

    **总结** 这个"购物车(JSTL实现)"项目提供了一个实际的案例,演示了如何利用JSP和JSTL的标签来实现一个完整的购物车功能。通过此项目,学习者可以提升对JSP动态网页开发的理解,以及JSTL在处理服务器端逻辑时的...

    JSTL1.0与JSTL1.1的tld文件包下载

    总结来说,JSTL 1.0和1.1的.tld文件包是用于JSP开发的重要资源,它们定义了JSTL标签的行为和属性。理解.tld文件的结构和用途,可以帮助开发人员更好地利用JSTL进行Web应用的开发,提高代码的可读性和可维护性。在...

    jstl1.1.jar和standard1.1.jar

    今天做项目,用到了el表达式和jstl,在tomcat6.0上跑得好好的,没想到copy到tomcat5.5后,服务器起不来了,是tomcat版本的问题。查阅了不少资料,现在总结如下: 错误信息: java.lang.NoClassDefFoundError: javax...

    jstl实例与使用总结

    ### JSTL (JavaServer Pages Standard Tag Library) 实例与使用总结 JSTL 是 JavaServer Pages 技术的一部分,它提供了一套标准标签库来简化 JSP 页面的开发过程。通过使用 JSTL,开发者可以减少页面中的脚本代码量...

    standard.jar和jstl.jar

    **总结** JSTL是Java Web开发中的重要工具,它通过提供一系列预定义的标签和函数,简化了JSP页面的编写,提高了代码的可读性和可维护性。`standard.jar`和`jstl.jar`这两个文件是使用JSTL的基石,它们包含了JSTL的...

    jstl-1.1.0.jar和jstl-1.2.0.jar

    **总结**: JSTL是Java Web开发中的重要工具,通过提供一系列预定义的标签,可以减少JSP页面中的Java代码,提高可维护性和可读性。`jstl-1.1.0.jar`和`jstl-1.2.0.jar`是两个不同时期的JSTL实现,每个版本都有其特定...

Global site tag (gtag.js) - Google Analytics