JSTL 核心标签库(C标签)标签共有13个,功能上分为4类:
1.表达式控制标签:out、set、remove、catch
2.流程控制标签:if、choose、when、otherwise
3.循环标签:forEach、forTokens
4.URL操作标签:import、url、redirect
用法:
1、forEach
通过varStatus 可以访问迭代过程中的信息:
- index number 现在指到成员的索引 (0开始)
- count number 总共指到成员的总和 (1开始)
- first boolean 现在指到成员是否为第一个
- last boolean 现在指到成员是否为最后一个
访问下面的属性可以使用EL表达是: varStatus="status" 使用 S{status.index} 访问属性
forEach遍历集合: ${item.property} ${item["property"]}
在进行字符串拼接时,可以直接在后面拼接 ${item.property} ans
2.C:if 条件判断
<c:if test="${not empty item.publish_time}">
- 内容
- </c:if>
注意:条件判断的语句全部在${}中,例如:${item.name=='sss'}
注意:item.name 在java中是字符串,但值是数字时,'' 可以省略。
!empty ;empty ;not empty; null ;!=null
3.forTokens 字符串分割遍历
4.c:out 输出内容
<c:out value="value" [escapeXml="{true|false}"] [default="defaultValue"] />
5.c:set 设置变量 (放在jsp中 或者javaBean中)
<c:set value="value" var="varName" [scope="{ page|request|session|application }"]/>
6:c:choolse c:when c:otherwise
例如:
- <c:set var="score">85</c:set>
- <c:choose>
- <c:when test="${score>=90}">
- 你的成绩为优秀!
- </c:when>
- <c:when test="${score>=70&&score<90}">
- 您的成绩为良好!
- </c:when>
- <c:when test="${score>60&&score<70}">
- 您的成绩为及格
- </c:when>
- <c:otherwise>
- 对不起,您没有通过考试!
- </c:otherwise>
- </c:choose>
7:jstl 同时也支持国际化使用 fmt进行国际化 以及样式化
:<fmt:formatDate /> 时间格式输出:<fmt:formatDate value="<%=new Date()%>" type="both" pattern="yyyy/MM/dd hh:mm:ss" />
:<fmt:parseDate> <fmt:parseDate type="date" value="2008-4-5"/>
8:fn 函数
Functions 标签库概览
l fn:contains 函数 : 用于判断在源字符串中是否包含目标字符串。
l fn:containsIgnoreCase 函数 : 用于判断在源字符串中是否包含目标字符串 , 并且在判断时忽略大小写。
l fn:startsWith 函数 : 用于判断源字符串是否以指定的目标字符串开头。
l fn: endsWith 函数:用于判断源字符串是否以指定的目标字符串结尾。
l fn:indexOf 函数:用于在源字符串中查找目标字符串,并返回源字符串中最先与目标字符串匹配的第一个字符的索引。
l fn:replace 函数:用于把源字符串中的一部分替换为另外的字符串,并返回替换后的字符串。
l fn:substring 函数:用于获取源字符串中的特定子字符串。
l fn:substringBefore 函数:用于获取源字符串中指定子字符串之前的子字符串。
l fn: substringAfter 函数:用于获取源字符串中指定子字符串之后的子字符串
l fn:split 函数:用于将源字符串拆分为一个字符串数组。
l fn:join 函数:用于将源字符串数组中的所有字符串连接为一个字符串。
l fn:toLowerCase 函数:用于将源字符串中的所有字符改为小写。
l fn: toUpperCase 函数:用于将源字符串中的所有字符改为大写。
l fn:trim 函数:用于将源字符串中的开头和末尾的空格删除。
l fn:escapeXml 函数:用于将源字符串中的字符“ < ”、“ > ”、“ ” ”和“ & ”等转换为转义字符。
l fn:length 函数:用于返回字符串中的字符的个数,或者集合和数组的元素的个数
使用例如:
${fn:length(array)}
${fn:escapeXml("<b> 表示粗体字 </b>") }