2

设想:

我在类DatabaseDAO中有一个方法gerRow() ,它获取一些表行并将它们添加到类Row的对象中。

每个Row对象都被添加到一个ArrayList中。getRow()方法返回该ArrayList。

问题:

我的问题是如何在 JSP 中迭代文本结果?我打算使用 JSTL 标签<c:out><c:ForEach>. 我认为这是唯一的选择。我该怎么做?

产生的困难:

我调用的方法返回一个 ArrayList。ArraList 具有行对象。然后,我必须将该行中的每一列分开才能打印出来。

Row 对象属于 Row 类,有 Row.getColum1、Row.getColum2、Row.getColum3 等。

样本:

<jsp:useBean id="xxxxxxxxxxxx" class="xxxxxxxxxxxx" scope="request" />
<c:forEach var="xxxxxxxxxxxx" items="${xxxxxxxxxxxx}">
    <c:out value="${xxxxxxxxxxxx.xxxxxxxxxxxx}" />
    <c:out value="${xxxxxxxxxxxx.xxxxxxxxxxxx}" />
</c:forEach>
4

1 回答 1

1

我猜你不知道是什么x。这称为表达语言

你不需要这个<jsp:useBean id="xxxxxxxxxxxx" class="xxxxxxxxxxxx" scope="request" />

表达式语言通常翻译成get方法,但是你不需要放“get”这个词。像这样myObj.getId();写的东西:#{myObj.id}. 就是这样,如果你想在 html 表上写这个,就这样做(我假设是 html 表,因为你说“我必须将该行中的每个列分开才能打印出来”)。

<table>
    <c:forEach var="rowObj" items="${myClass.myArrayList}">
        <tr>
            <td>${rowObj.column1}</td>
            <td>${rowObj.column2}</td>
            <td>${rowObj.column3}</td>
        </tr>
    </c:forEach>
</table>

请注意,答案中最重要的部分是我提供的链接,您应该了解所有这些。您是否已经将数组列表放入请求中?在这里很难说哪个是真正的问题。

另请参阅: 如何避免 JSP 文件中的 Java 代码?

于 2013-03-18T13:17:15.940 回答