gpt4 book ai didi

java - 在单独的 JSTL 循环中访问 Map 值

转载 作者:行者123 更新时间:2023-11-30 05:14:28 26 4
gpt4 key购买 nike

假设存在名为resultSet的查询结果有一个可用字段 templateId .

此外,存在一个映射“templateMap”,其键为 templatedId .

我无法从以下内容中得到任何结果,感谢任何帮助。

<c:foreach var="row" items="${resultSet.rows}">
<c:out value="${templateMap[row.templateId]}" />
</c:foreach>

注意:这是一个编码恐怖应用程序,其中上述结果集是 <sql:query> 的结果。

以下也不起作用。

<c:foreach var="row" items="${resultSet.rows}">
<c:set var="tmplId" value="${row.templateId}" />
<c:out value="${templateMap[tmplId]}" />
</c:foreach>

最佳答案

您发布(和编辑)的代码在语法上是有效的,因此问题出在其他地方。

首先,Id后缀让我觉得它实际上是 Number 。事实上,EL 中的非十进制数字默认为 long 。因此,如果它是 Map<Integer, Integer> ,那么这段代码将无法工作。您需要有一个 Map<Long, Long>Map<Long, Integer>让它发挥作用。

我不知道应该如何解释你的措辞“编码恐怖应用程序”,但我敢打赌你已经知道将 JSTL SQL taglib 用于快速原型(prototype)设计之外的其他目的被认为是一种非常糟糕的做法;)该逻辑属于真实的数据访问层中的Java类。

关于java - 在单独的 JSTL 循环中访问 Map 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2121575/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com