3. <c:remove>
库:Core(核心库)
URI:http://java.sun.com/jsp/jstl/core
前缀:c
描述:<c:remove>标签用于删除存在于scope中的变量。类似于<%session.removeAttribute(“name”)%> 、
<%request.removeAttribute(“name”)%>...
语法:
<c:remove var="varName" [scope="{page|request|session|application}"]/>
属性:
属性名 | 描述 | 类型 | 是否接受动态值 | 是否支持EL | 是否 必须 | 默认值 | 说明 |
var | 变量名 | String | N | N | 是 | 无 | 欲移除变量的名称 |
scope | 范围 | String | N | N | 否 | page | var变量的JSP范围; 若没有指定,默认为全部查找 |
------------------------------------------------------------------------------------------------------------------------------------------
实例:
Example1
<c:remove var="sampleValue" scope="session"/>
${sessionScope.sampleValue}
------------------------------------------------------------------------------------------------------------------------------------------
Example2
<c:remove var="username" scope="session"/>
将username变量从session范围移除。若我们不设定scope,则<c:remove>会移除所有范围名称为username
的数据。
------------------------------------------------------------------------------------------------------------------------------------------
4.<c:catch>
库:Core(核心库)
URI:http://java.sun.com/jsp/jstl/core
前缀:c
描述:<c:catch>动作用于捕获JSP元素在其体中抛出的异常,从而提供细粒度的错误控制, 此异常也可以保存为一个页面作用域变量。当错误发生<c:catch>和</c:catch>之间时,只有<c:catch>和</c:catch>之间的程序会被中止忽略,但整个网页不会被中止。它包含一个var属性,是一个描述异常的变量,该变量可选。若没有var属性的定义,那么仅仅捕捉异常而不做任何事情,若定义了var属性,则可以利用var所定义的异常变量进行判断转发到其他页面或提示报错信息。
语法:
<c:catch [var="var"]>
//可能发生错误的部分
JSP elements
</c:catch>
属性:
属性名 | 描述 | 类型 | 是否接受动态值 | 是否支持EL | 是否 必须 | 默认值 | 说明 |
var | 变量名 | String | N | N | N | 无 | 用来存储错误信息的变量 |
实例:
------------------------------------------------------------------------------------------------------------------------------------------
Example1
<c:catch var="importException">
<fmt:parseDate value="${param.empDate}" dateStyle="short" />
</c:catch>
<c:if test="${importException != null}">
<jsp:forward page="input.jsp">
<jsp:param name="msg" value="Invalid date format" />
</jsp:forward>
</c:if>
------------------------------------------------------------------------------------------------------------------------------------------
Example2
<c:catch var="err">
${param.sampleSingleValue[9] == 3}
</c:catch>
${err}
当“${param.sampleSingleValue[9] == 3}”表达式有异常时,可以从var属性“err”得到异常的内容,通常判断“err”是否为null来决定错误信息的提示。
------------------------------------------------------------------------------------------------------------------------------------------
5.<c:if>
库:Core(核心库)
URI:http://java.sun.com/jsp/jstl/core
前缀:c
描述:<c:if>动作仅当所指定的表达式计算为true时才计算其体。计算结果也可以保存为一个作用域Boolean变量。
语法:
语法1:没有体
<c:if test="booleanExpression "
var="var " [scope="page |request|session|application"]/>
语法2:有体
<c:if test="booleanExpression">
JSP elements
</c:if>
属性:
属性名 | 描述 | 类型 | 是否接受动态值 | 是否支持EL | 是否 必须 | 默认值 | 说明 |
test | 测试表达式 | boolean | Y
| Y | 是 | 无 | 如果表达式的结果为true则执行body,false则相反 |
var | 变量名 | String | N | N | 否 | 无 | 用来存储test运算后的结果,即true或false |
scope | 变量作用域 | String | N | N | 否 | page | var变量的JSP范围 |
实例:
<c:if test="${empty param.empDate}">
<jsp:forward page="input.jsp">
<jsp:param name="msg" value="Missing the Employment Date" />
</jsp:forward>
</c:if>
6.<c:choose>
库:Core(核心库)
URI:http://java.sun.com/jsp/jstl/core
前缀:c
描述:<c:choose>动作用于控制嵌套<c:when>和<c:otherwise>动作的处理,它只允许第一个测试表达式计算为true的<c:when>动作得到处理;如果所有<c:when>动作的测试表达式都计算为false,则会处理一个<c:otherwise>动作。<c:choose>标签没有属性,可以被认为是父标签,<c:when>、<c:otherwise>将作为其子标签来使用。
语法:
<c:choose>
body(<when>和<otherwise>)
</c:choose>
限制:
<c:choose>的本地内容只能有:
.空白
.1或多个<c:when>
.0或多个<c:otherwise>
属性:
无
实例:
----------------------------------------------------------------------------------------------------------------------------------------
Example1
<c:choose>
<c:when test="${product.onSale}">
${product.salesPrice} On sale!
</c:when>
<c:otherwise>
${product.price}
</c:otherwise>
</c:choose>
---------------------------------------------------------------------------------------------------------------------------------------
Example2
<c:choose>
<c:when test="${condition1}">
condition1 为 true
</c:when>
<c:when test="${condition2}">
condition2 为 true
</c:when>
<c:otherwise>
condition1和conditon2都为false
</<c:otherwise >
说明:
在同一个<c:choose>中,假如所有的<c:when>的test都不为true时,则执行<c:otherwise>的本体内容。
在同一个<c:choose>中,假若有好几个<c:when>都会true时,只能有一个<c:when>成立。
</c:choose>
----------------------------------------------------------------------------------------------------------------------------------------