传智播客学习之JSTL

来源:互联网 发布:上帝保佑美国 知乎 编辑:程序博客网 时间:2024/04/28 02:16

1.c:out:主要用来显示数据的内容

格式:<c:out value=”value” [escapeXml=”{true/false}”] [default=”default value”]/>

说明:value被计算的表达式,当为空的时候,输出default的值,注意这里的空不是空字符串。escapeXml确定是否转换“< 、 &、  >、 ‘ 、 “ 、”等字符为相应的实体编码。

*******************************************************************************

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

组合一:将value变量存储到jsp范围中,key为var

<c:set value="value" var="varname" scope="{page|request|session|application}"></c:set>

组合二:设置javaBean或者map对象的属性property为value

<c:set value="value" target="javaBean或者map对象" property=“property name”"></c:set>

Eg:

<c:set value="shangguan" target="${pageScope.stu1}" property="name"></c:set>

<c:out value="${pageScope.stu1.name}"></c:out>

*******************************************************************************

3.c:remove主要用来移除jsp指定作用域中的变量

<c:remove var="varname" [scope="{page|request|session|application}]"/>

*******************************************************************************

4.c:if 用来做条件判断

<c:if test=”testcondition” [var="varname"]  [scope="{page|request|session|application}]"></c:if>

可以有标签体,可以没有标签体

*******************************************************************************

5. c:choose c:when c:otherwise

实现if-else条件判断结构

注意c:choose本身只当做 c:when 和 c:otherwise 的父标签,它内部可以嵌套一个或多个c:when以及0个或1个c:otherwise,其中c:when中有一个test属性,当为true则执行标签体的内容,c:otherwise必须作为c: choose的最后一个分支,当都不满足执行它。注意c:when只执行第一个满足条件的标签体。

*******************************************************************************

6.c:forEach 用于对包含多个对象的集合或者数组进行迭代,重复执行他的标签体,或者重复迭代固定的次数。

<c:forEach var =”varname”   items=”集合或者数组”   [varStatus=” varStatusName”] [begin=” begin”]   [end=”end”]   [step=”step”]/>

其中varStatus表示迭代的状态,begin默认从0开始迭代,step默认为1

Eg:<c:forEach items="${list}" var="stu" begin="1" end="4" step="2">

    ${stu.name}  ~~~~${stu.age}<br>

</c:forEach>

*******************************************************************************

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

Eg:结果为:a b c d

<c:forTokens items="a;b;c;d" delims=";" var="st">

  ${st}  <br>

</c:forTokens>

*******************************************************************************

8.c:url:主要用来产生一个URL

<c:url value="将要处理的url"  [var="要导入资源内部的变量"]   [context="使用相对路径标识外部资源的指定上下文名称"] [scope="{page|request|session|application}]">

1).产生一个url,用来链接到web站点的其他的web应用 相同Container下,其他web 站台必须以“/”开头

<c:url value="/itcast1130mvcxml/main/main.jsp" var="str" context="/">

</c:url>

<br>

<a href="${str}">test</a>

<br>

2).产生一个url,用来链接到外部的站点的其他的web应用

<c:url value="http://www.sina.com" var="str">

</c:url>

<br>

<a href="${str}">test</a>

<br>

3).产生一个url,用来链接到当前的web应用的其他的页面

<c:url value="/tag04.jsp" var="str">

</c:url>

<br>

<a href="${str}">test</a>

<br>

4).直接使用

<a href="<c:url value="/tag04.jsp" />">test</a> 

注意所有core标签库在使用前,需要在jsp页面上声明

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

原创粉丝点击