SpringMVC之JSTL条件行为和遍历行为的示例分析

发布时间:2021-09-04 11:55 来源:亿速云 阅读:0 作者:小新 栏目: 开发技术

小编给大家分享一下SpringMVC之JSTL条件行为和遍历行为的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

JSTL条件行为和遍历行为

JSTL的条件行为标签有四个:if,choose,when,otherwise标签

1、if标签

是对某一个条件进行测试,结果为true就执行它的body content。测试结果保存在Boolean对象中,并创建有届变量来保存这个Boolean对象。利用var和scope属性分别定义有界变量的名称和范围。

两种形式:

1) 没有body content

<c:if test="condition" var="varName" [scope="page|request|session|application"] />

此情况的var 一般是通过其他标签在同一个JSP的后续阶段再进行测试

2)

<c:if test="conditin" [var="varName"] [scope="page|request|session|application"] >
body content
</c:if>

PS:模拟else的情况可一使用两次if,一次正常,一次相反

2、choose when 和otherwise标签

choose,when和Java中的switch,case类似

choose标签中必须嵌有一个或者多个when标签,每个when标签都表示一种可以计算和处理的情况,otherwise标签则用于默认的条件块,假如没有任何一个when标签的处理结果为true,则otherwise将被处理,otherwise必须放在最后一个when之后.

choose和otherwise标签没有属性,when标签必须带有定义测试条件的test属性,用来决定是否处理bodycontent.

3、遍历行为forEach

3.1 forEach 会无数次的反复遍历body content 或者对象的集合

可以被遍历的对象包括java.util.Collection,java.util.Map的全部实现,以及对象数组或者主类型,有两种形式:

1) 固定的次数重复body content

<c:forEach [var="varName"] begin="begin" end="end" step="step" >
body content
</c:forEach>

2) 用于遍历对象集合

<c:forEach items="collection" [var="varName"] [varStatus="varStatusName"] [begin="begin"] [ end="end"] [step="step"]>
body content
</c:forEach>

PS:var创建的有界变量的名称只在该forEach中使用,一到</c:forEach>处就会被删除。

3.2 forTokens标签

forTokens标签用来遍历以特定的分隔符隔开的令牌,用delims指定的分隔符,将元素分开

语法如下:

<c:forTokens items ="stringOfTokens" delims="delimiters" [var="varName" ] [varStatus="varStatusname"]  [begin="begin"] [end="end" ] [step="step"]>
body content
</c:forTokens>

免责声明:本站发布的内容(图片、视频和文字)以原创、来自互联网转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系QQ:712375056 进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。