我是春天新手我有以下代码可以任何人解释
<c:forEach items="${certificateToolState.certificateDefinition.awardCriteria}" var="criterion">
这是什么意思?
由于
答案 0 :(得分:3)
这可能是JSP文件的摘录。这意味着当页面准备渲染时,它将对从for-each
获取的元素执行certificateToolState.certificateDefinition.awardCriteria
循环,并为每个元素执行某些操作,同时将它们分配给临时变量{{1} }。
它基本上与Java中的相同:
criterion
答案 1 :(得分:2)
它将迭代集合certificateToolsState.etc.
etctc中的项目,并且在每次迭代中,当前变量将为criterion
这是一个例子
http://www.springbyexample.org/examples/spring-web-flow-subflow-webapp-jsp-example.html
答案 2 :(得分:2)
迭代通过对象引用指定的集合
它是基本的表达式语言(EL)和JSTL(c:forEach)的东西。 我假设唯一的spring元素是certifcateToolState是一个spring bean。
基本上它在纯代码中意味着什么:
for (Criteria criterion : certificateToolState.getCertificateDefinition().getAwardCriteria()) {
....
}
答案 3 :(得分:2)
这意味着模型中有一个名为certificateToolState
的对象,其中有一个名为的字段
certificateDefinition
又包含另一个名为awardCriteria
的字段,其类型为Iterable
。
访问此变量,awardCriteria
中的每个元素都放在一个名为`criterion'的临时变量中。
Java等价物将是这样的:
for(Object criterion : certificateToolState.getCertificateDefinition().getAwardCriteria())
{
...
}
答案 4 :(得分:2)
这是一个JSTL。
c:forEach 命令将迭代列表( awardCriteria 是您的列表),
并将列表中的每个值保存在标准变量中。
答案 5 :(得分:1)
感谢您的回答我想知道 $ {certificateToolState.certificateDefinition.awardCriteria}
这个意思不是为了每个