c:out
c:out 标签为输出一些常量或变量的值
属性 | 作用 |
---|---|
value | 必选 显示的内容,可以为字符常量,也可以为el 表达式 |
default | 可选 当el 表达式的值为null 的话,则会显示为空 |
escapeXML | 可选 默认值 true 解析符号转义 flase 为解析 |
测试
<c:out value="< value >" default="no value" escapeXml="false"></c:out>
结果:<value>
<c:out value="< value >" default="no value" escapeXml="true"></c:out>
结果:<< value >>
c:set
创建一个变量或者修改一个bean 或 map 对象的属性值
属性 | 作用 |
---|---|
value | 必选 修改的对象值、或创建变量的值 |
var | 可选 创建变量的变量名 |
scope | 可选 创建的变量 所在的内置对象名称page、request、session、application |
target | 可选 修改的bean 对象或者map对象 |
property | 修改的属性 |
创建变量
<c:set var="test1" value="i am test1 var value" scope="request"></c:set>
修改map
<%
Map map = new HashMap();
map.put("test1", "test1");
map.put("test2", "test2");
map.put("test3", "test3");
request.setAttribute("map", map);
%>
<c:set target="${map }" property="test1" value="testestsetset" />
c:remove
移除某个内置对象的属性
属性 | 作用 |
---|---|
var | 移除的属性名称 |
scope | 可选 所在的内置对象名称page、request、session、application |
移除
<%
Map map = new HashMap();
map.put("test1", "test1");
map.put("test2", "test2");
map.put("test3", "test3");
request.setAttribute("map", map);
%>
<c:set target="${map }" property="test1" value="testestsetset" />
<c:remove var="map"/>
c:catch
用来捕获异常
属性 | 作用 |
---|---|
var | 存储错误的信息 |
捕获异常
<c:catch var="error">
<c:out value="${1/0 }"></c:out>
</c:catch>
c:if
用来判断el 表达式,如果el 表达式为true ,则会执行标签内的内容
属性 | 作用 |
---|---|
var | 存储el 表达式的结果 |
test | el 表达式,结果必须是boolean 值 |
scope | var 属性存储的内置对象 |
判断
<c:if test="${1==3 }" var="flag" scope="request">
<c:out value="1 not equels 3"></c:out>
</c:if>
c:choose, c:when, c:otherwise
类似于switch 逻辑判断
判断
<!-- 结果为 11 -->
<c:choose>
<c:when test="${3==3 }" >11</c:when>
<c:when test="${3==3 }" >22</c:when>
<c:when test="${3==3 }" >33</c:when>
<c:otherwise>
no when
</c:otherwise>
</c:choose>
c:forEach
用来循环一个集合类型的对象
属性 | 作用 |
---|---|
items | 集合名称 |
var | 暂存集合元素 |
begin | 可选 循环开始的索引 |
end | 可选 循环结束的索引 |
step | 可选 步长 |
varStatus | 用来获取集合元素的信息,它有4个属性,用来获取集合的index、count、first、last |
循环
<!--结果
1 from index 0
2 from index 1
3 from index 2
4 from index 3
5 from index 4
-->
<%
ArrayList list = new ArrayList();
list.add(1);
list.add(2);
list.add(3);
list.add(4);
list.add(5);
request.setAttribute("list", list);
%>
<c:forEach items="${list}" var="value" varStatus="status" >
${value } from index ${status.index } <br/>
</c:forEach>
c:forTokens
分割一个字符串为一个集合,用来循环
属性 | 作用 |
---|---|
items | 字符串 |
delims | 分割字符 |
var | 暂存集合元素 |
begin | 可选 循环开始的索引 |
end | 可选 循环结束的索引 |
step | 可选 步长 |
varStatus | 用来获取集合元素的信息,它有4个属性,用来获取集合的index、count、first、last |
字符串分割
<!--结果
111
222
333
444
555
-->
<c:forTokens items="1111-2222-3333-4444-5555" delims="-" var="item">
${item }<br/>
</c:forTokens>