JSTL常用标签大全

1、下载jstl标签库

2、在相目\WEB-INF\lib\文件夹中放入标签库的两个jar文件:javax.servlet.jsp.jstl-1.2.1.jar 和 javax.servlet.jsp.jstl-api-1.2.1.jar

3、在jsp文件的顶部加入以下内容:<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
  

<c:> 核心标签库 

==========================================================================

JSTL 核心标签库(C标签)标签共有13个,功能上分为4类:

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

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

3.循环标签:forEach、forTokens

4.URL操作标签:import、url、redirect

<c:forEach> 标签

-------------------------------------------------------------------

为循环控制,它可以将集合(Collection)中的成员循序浏览一遍。

 <c:forEach> 标签的语法 说明 :

语法1:迭代一集合对象之所有成员

Html代码

  1. <c:forEach [var="varName"] items="collection" [varStatus="varStatusName"] [begin="begin"] [end="end"] [step="step"]>
  2. 本体内容
  3. </c:forEach>

语法2:迭代指定的次数

Html代码

  1. <c:forEach [var="varName"] [varStatus="varStatusName"] begin="begin" end="end" [step="step"]>
  2. 本体内容
  3. </c:forEach>

<c:forEach> 标签的 属性说明 :

<c:forEach> 标签的 属性 : varStatus属性: 它的提供另外四个属性:index,count,fist和last,它们个自的意义如下:

Java代码

  1. 属性                   类型                                  意义
  2. index                  number                    现在指到成员的索引
  3. count                  number                    总共指到成员的总和
  4. first                  boolean                   现在指到成员是否为第一个
  5. last                   boolean                   现在指到成员是否为最后一个

 <c:forEach> 遍历 List列表:

对于一个基本类型的数组,当前元素将作为相应包装类(Integer、Float等等)的一个实例提供。

Html代码

  1. <c:forEach items="${domainList }" var="item">
  2. <tr>
  3. <td align="center" valign="middle">${item["domain"]==null?"&nbsp;":item["domain"]}</td>
  4. <td align="center" valign="middle"><fmt:formatDate value="${item[‘bind_date‘]}" pattern="yyyy-MM-dd HH:mm:ss"/></td>
  5. <td align="center" valign="middle">
  6. <c:if test="${item[‘domain‘]!=null}">
  7. <a href="javascript:;" id="${item[‘domain‘]}" class="del">&nbsp;</a>
  8. </c:if>
  9. </td>
  10. </tr>
  11. </c:forEach>

 <c:forEach> 遍历Map:

对于一个java.util.Map,当前元素则作为一个java.util.Map.Entry提供。

Html代码

  1. <c:if test="${!empty permissionMap}">
  2. <c:forEach items="${permissionMap}" var="item">
  3. <tr>
  4. <td>${item.value.id}</td>
  5. <td>${item.value.urlOnClass}</td>
  6. <td>${item.value.urlOnMethod}</td>
  7. </tr>
  8. </c:forEach>
  9. </c:if>

<c:forTokens> 标签

-------------------------------------------------------------------

用来浏览一字符串中所有的成员,其成员是由定义符号(delimiters)所分隔的。

 <c:forTokens> 标签的语法 说明 :

Html代码

  1. <c:forTokens items="stringOfTokens" delims="delimiters" [var="varName"]
  2. [varStatus="varStatusName"] [begin="begin"] [end="end"] [step="step"]>
  3. 本体内容
  4. </c:forTokens>

<c:forTokens> 标签的 属性说明 :

<c:out> 标签

-------------------------------------------------------------------

主要用来显示数据的内容

 <c:out> 标签的语法 说明 :

语法1:没有本体(body)内容

Html代码

  1. <c:out value="value" [escapeXml="{true|false}"] [default="defaultValue"] />

语法2:有本体内容

Html代码

  1. <c:out value="value" [escapeXml="{true|false}"]>
  2. default value
  3. </c:out>

注:一般来说,<c:out>默认会将<、>、’、” 和 & 转换为 &lt;、&gt;、'、" 和&amp;。假若不想转换时,只需要设定<c:out>的escapeXml属性为fasle就可以了。

<c:set> 标签

-------------------------------------------------------------------

主要用来将变量储存至JSP范围中或是JavaBean的属性中。

 <c:set> 标签的语法 说明 :

语法1:将value的值储存至范围为scope的 varName 变量之中

Html代码

  1. <c:set value="value" var="varName" [scope="{ page|request|session|application }"]/>

语法2:将本体内容的数据储存至范围为scope的 varName 变量之中

Html代码

  1. <c:set var="varName" [scope="{ page|request|session|application }"]>
  2. … 本体内容
  3. </c:set>

语法3:将 value的值储存至 target 对象的属性中

Html代码

  1. <c:set value="value" target="target" property="propertyName" />

语法4:将本体内容的数据储存至target 对象的属性中

Html代码

  1. <c:set target="target" property="propertyName">
  2. … 本体内容
  3. </c:set>

<c:set> 标签的 属性说明 :

<c:remove> 标签

-------------------------------------------------------------------

主要用来移除变量。

 <c:remove> 标签的语法 说明 :

Html代码

  1. <c:remove var="varName" [scope="{ age|request|session|application }"] />

<c:catch> 标签

-------------------------------------------------------------------

主要用来处理产生错误的异常状况,并且将错误信息储存起来。

 <c:catch> 标签的语法 说明 :

Html代码

  1. <c:catch [var="varName"] >
  2. … 欲抓取错误的部分
  3. </c:catch>

<c:if> 标签

-------------------------------------------------------------------

的用途就和我们一般在程序中用的if一样。

 <c:if> 标签的语法 说明 :

语法1:没有本体内容(body)

Html代码

  1. <c:if test="testCondition" var="varName" [scope="{page|request|session|application}"]/>

语法2:有本体内容

Html代码

  1. <c:if test="testCondition" [var="varName"] [scope="{page|request|session|application}"]>
  2. 本体内容
  3. </c:if>

示例:

Html代码

  1. <c:if test="${not empty item.publish_time}">
  2. 内容
  3. </c:if>
  4. <c:if test="${item[‘domain‘]!=null}">
  5. 内容
  6. </c:if>
  7. <c:if test="${!empty permissionMap}">
  8. 内容
  9. </c:if>

<c:url>   标签

-------------------------------------------------------------------

用于动态创建一个url地址,本例另外用<c:param>标签附带了两个参数传递,示例如下:

页面显示效果:

可以看到鼠标悬浮到a标签后状态栏显示出了正确的链接地址,并且带了两个参数,点击链接后跳转

到了aaa.jsp页面。

<c:redirect>   标签

-------------------------------------------------------------------

用于重定向网页,就一行代码很简单。同样的,标签体之间可以用<c:param>标签附加参数:

<c:redirect url="aaa.jsp">

这里可以写<c:param>标签....

</c:redirect>

c:choose> <c:when> <c:otherwise>   标签

-------------------------------------------------------------------

相当于Java中的if....else,注:<c:otherwise>标签可以省略

Html代码

  1. <c:set var="score">85</c:set>
  2. <c:choose>
  3. <c:when test="${score>=90}">
  4. 你的成绩为优秀!
  5. </c:when>
  6. <c:when test="${score>=70&&score<90}">
  7. 您的成绩为良好!
  8. </c:when>
  9. <c:when test="${score>60&&score<70}">
  10. 您的成绩为及格
  11. </c:when>
  12. <c:otherwise>
  13. 对不起,您没有通过考试!
  14. </c:otherwise>
  15. </c:choose>

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-18 23:39:32

JSTL常用标签大全的相关文章

JSTL常用标签库介绍

最近在开发中经常使用JSTL标签,感觉还是蛮好用的,这里介绍几个比较常用的JSTL标签,供大家参考,也是对自己知识的复习与回顾吧! 第一个就是流程控制标签里面的if,用的是非常多.具体写法: <c:if test="条件">执行语句</c:if> 比如条件1成立,就显示一个按钮,条件2成立就显示一个超链接: <c:if test="条件1"> <input id="submit_btn" class=&q

安志清PHP:dedecms织梦常用标签大全,只有你没见过的

文章来自Mr. Right :www.rol.xyz 列表页(包括图片列表): 当前位置:{dede:field name='position'/} 列表循环: {dede:list pagesize='10'} 图片: [field:array runphp='yes']@me = (empty(@me['litpic']) ? "" : "<a href='{@me['arcurl']}' ><img src='{@me['litpic']}'/>

IT兄弟连 JavaWeb教程 JSTL常用标签

1.条件标签 条件标签能够实现Java语言中的if语句以及if-else语句的功能,它包括以下几种: <c:if>:用于实现Java语言中的if语句的功能. <c:choose>.<c:when>.<c:otherwise>:用于实现Java语言中if-else语句的功能. (1)<c:if>标签 <c:if>标签用于实现Java语言中的if语句的功能,它的语法为: <c:if test="逻辑表达式" va

jstl常用标签整理&lt;c:out&gt;&lt;c:fortoken&gt;,基本表达式ne,el

<c:url value="http://baidu.com" var="url" scope="session"/> <c:url>标记具有以下属性: Attribute Description Required Default value 根URL Yes None context /后面的本地Web应用程序的名称 No Current application var 变量的名称,暴露处理的URL No Print t

[Java] JSP笔记 - EL、JSTL 常用标签

一. 什么是 EL 语言 表达式语言(EL)是 JSP 2.0 引入的一种计算和输出 Java 对象的简单语言. 二.EL 语言的作用 为了使JSP写起来更加简单.表达式语言的灵感来自于 ECMAScript 和 XPath 表达式语言,它提供了在 JSP 中简化表达式的方法.它是一种简单的语言,基于可用的命名空间(PageContext 属性).嵌套属性和对集合.操作符(算术型.关系型和逻辑型)的访问符.映射到 Java 类中静态方法的可扩展函数以及一组隐式对象. 三.使用 EL 语言前的配置

JSTL自定义标签

这节我们总结一下JSTL自定义标签相关内容. 1. 自定义标签简介 自定义标签主要用于移除JSP页面中的java代码.Jsp页面主要是用来显示给前台的,如果里面有过多的java代码的话,会显得很乱,但是没有java代码也无法获取相关数据或完成相关操作.那么这时候我们就可以自己定义一个标签,来完成需要用java代码完成的事情,这样Jsp页面就会清洁很多,可读性也更强.JSP中使用自定义标签移除只需要完成以下两个步骤: 1)编写一个实现Tag接口的java类(标签处理类): 2)编写标签库描述符(t

jstl的下载与配置及其常用标签的使用

一.jstl标签的下载与配置 摘要:下载地址http://www.apache.org/dist/jakarta/taglibs/standard/,主要standard.jar  与 jstl.jar 两个jar文件,若为所有web应用使用可拷贝到tomcat的 lib目录下,若为当前应用使用拷贝到WEB-INF/lib中即可 JSTL(JSP Standard Tag Library,JSP标准标签库)由Apache的jakarta小组开发,是开源的标准标签库,目前正在不断完善中.使用JST

JSP常用标签——JSTL标签和EL表达式

一.JSTL简介 1.什么是JSTL JSTL是Java中的一个定制标记库集.(这个标记库集不需要自己编写,可以直接使用) 2.为什么要使用JSTL 实现了JSP页面中的代码复用(基于标签库原理,重复率较高的代码块支持复用,提高效率) 书写JSP页面时可读性更强(长得很像xml,方便前端查看和参与开发) 用事实告诉你为什么使用JSTL: 实现: 但是,使用JSTL效果如下: 3.JSTL环境搭建 JSTL的下载: 下载地址:http://archive.apache.org/dist/jakar

JavaWeb学习之JSP常用标签、EL表达式的运算符、JSTL标签库(6)

1.JSP常用标签 * 只要支持JSP文件,常用标签有可以直接使用 * 格式: jsp:xxxx * jsp:forward ,完成jsp页面的转发 * page属性:转发的地址 <% request.setCharacterEncoding("UTF-8"); %> <jsp:forward page="/index.jsp"> <jsp:param value="张三" name="userName&q