这个“c:”怎么样?

时间:2013-11-19 14:48:44

标签: jsp jstl

我对JSP非常缺乏经验,并且遇到了一些我认为是JS(或者至少是它的一些变体?)的部分,它是这样的:

<c:forEach items="${errorsMap}" var="messages" varStatus="status">

我假设的另一个例子是不同的功能:

<c:set var="errorsArePresent" value="true" />

我假设forEach是通过列表中的每个元素提供循环(在这种情况下是errorsMap,并且'set'将变量设置为变量,我要求澄清的是为什么这些行有c:在他们面前?这是什么意思?

如果有帮助,这个脚本包含在JSP中,并且位于容器中。

3 个答案:

答案 0 :(得分:3)

这是JSTL核心库(documentation)

与JavaScript无关,JSTL表示“JavaServer Pages标准标记库”,即扩展JSP规范的标记库(Wikipedia上的更多信息)。

答案 1 :(得分:1)

包含JSTL核心库时使用的是前缀,可能是这样的:

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

...所以在引用该库中的函数时,请在其前面添加c:,以区别于其他潜在的函数名称冲突。

请参阅here

答案 2 :(得分:1)

是JSTL Core标签(JSP标准标签库)。您可以查看文档http://docs.oracle.com/javaee/5/tutorial/doc/bnakc.html