检索JSTL标签中的cookie和数组值

在检索Cookie时,我需要使用:

<c:forEach items="${cookie}" var="currentCookie">  

${currentCookie.value.name} </br>

</c:forEach>

但是,在使用自定义数组时,为什么我们需要跳过.value函数?

<c:forEach items="${myList}" var="myList">  

${myList.name} </br>

</c:forEach>

Cookie包含一个.getValue函数(),该函数以字符串格式返回cookie的内容,那么使用currentCookie.value.name怎么工作?

回答:

${cookie}指向Map<String,

Cookie>与cookie的名称作为地图键和Cookie对象映射值。Mapin上的每次迭代都会<c:forEach>为您提供Map.Entry反面,而back又具有getKey()getValue()方法。您的困惑是Cookie对象

具有getValue()方法。

<c:forEach items="${cookie}" var="currentCookie">  

Cookie name as map entry key: ${currentCookie.key}<br/>

Cookie object as map entry value: ${currentCookie.value}<br/>

Name property of Cookie object: ${currentCookie.value.name}<br/>

Value property of Cookie object: ${currentCookie.value.value}<br/>

</c:forEach>

这是Map<String, Cookie>因为它可以让您在事先知道名称的情况下轻松直接访问cookie值。以下示例假定它是cookieName

${cookie.cookieName.value}

您的列表示例是无效的。的var名称不应与列表本身相同。

以上是 检索JSTL标签中的cookie和数组值 的全部内容, 来源链接: utcz.com/qa/408989.html

回到顶部