当前位置: 首页 > 知识库问答 >
问题:

jstl循环访问对象中的列表

巫英纵
2023-03-14
public class NodeRel {
    private String fromNodeId;
    private String toNodeId;
    private String fromNodeName;
    private String toNodeName;
    private List<QuotaValueOnTime> fromNodeSend;
    private List<QuotaValueOnTime> toNodeSend;

    //getters and setters omitted 
}
<div class="table-responsive">
<table class="table table-striped table-bordered table-hover">
    <thead>
        <tr>
            <th class="center">Count</th>
            <th>relation</th>
            <th colspan='25'>Detail</th>
        </tr>
    </thead>

    <tbody>
        <c:forEach var="nodeRel" items="${nodeRelInfo}" varStatus="stc">
            <tr>
                <td rowspan="3">${stc.count}</td>
                <td rowspan="3">${nodeRel.fromNodeName} --> ${nodeRel.toNodeName}</td>
                <td>\</td>
                <c:forEach var="x" begin="0" end="23" step="1"> 
                            <td>${x}</td>
                </c:forEach>
            </tr>
            <tr>
                <td>Send_A</td>
                <c:forEach var="node" items="${nodeRelInfo.fromNodeSend}"> 
                            <td>${node.sumval}</td>
                </c:forEach>

            </tr>
            <tr>
                <td>Send_B</td>
                <c:forEach var="x" begin="0" end="23" step="1"> 
                            <td>${x}</td>
                </c:forEach>
            </tr>
        </c:forEach>
    </tbody>
</table>
</div>

我的代码不能工作,我在第二个循环附近得到了java.lang.NumberFormatException:输入字符串:“FromNodeSend”:

<c:forEach var="node" items="${nodeRelInfo.fromNodeSend}"> 
    <td>${node.sumval}</td>
</c:forEach>

我的代码出了什么问题?

共有1个答案

申奇希
2023-03-14

请注意,变量${nodeRelInfo}表示列表,变量${nodeRel}表示您使用的每个项。

因此,您希望在第二个循环中循环的项是${noderelinfo.fromnodesend}。更改变量looped的第二个名称:

<c:forEach var="node" items="${nodeRel.fromNodeSend}"> 
    <td>${node.sumval}</td>
</c:forEach>

它在与Java for-each循环相同的逻辑上工作。

for (List nodeRel: nodeRelInfo) {
    // bla blaa
    for (String node: nodeRel.fromNodeSend()) {
        System.out.println(node);
    }
}
 类似资料:
  • 尝试使用所有独特的硬币进行选择过滤器,但无法正确到达其末尾。 在循环浏览数据时,我可以得到所有硬币的列表。 我还想使用Set方法和spread操作符来获得唯一的值,但我不知道如何组合所有这些。

  • 我是json的新手,所以我从ajax调用中得到一个json响应 现在,我只能循环json对象 这是我的json 有人能帮忙吗

  • 我正在使用Spring Boot和Thymeleaf为我的应用程序创建一个登录页。为此,我需要呈现所有包含容器的主机对象的列表。以下是相关代码: 现在,我想遍历所有服务器,并在表中显示关于每个容器的信息。我的Thymeleaf模板如下所示: 我的问题是访问容器属性的部分(由注释标记)。每次我都会得到一个SpringEL异常。如果我删除并将其替换为会显示容器的String版本,因此我可以访问对象和它

  • 问题内容: 我有一个对象(解析树),其中包含子节点,这些子节点是对其他节点的引用。 我想使用序列化此对象,但是我得到了 TypeError:循环对象值 因为我提到的结构。 我该如何解决?对我而言,在序列化对象中是否表示对其他节点的引用并不重要。 另一方面,在创建对象时从对象中删除这些属性似乎很乏味,我也不想对解析器(水仙)进行更改。 问题答案: 使用的第二个参数,该替代品的功能,以排除已序列化对象