JSP循环遍历jsp上的mysql表并显示它

时间:2017-10-13 12:06:55

标签: java mysql jsp

在重构我的JSP以查询我的数据库时,我将下面的表格循环显示,因此它将显示在每个显示为新表格行的页面上。我无法让表格显示表格行信息中的表格数据。在循环并在其中的每一个中推送新表数据之前,现在它只将表的第一行推入表中,并且表的其余部分显示在JSP的表的一侧。你能帮我解决这个问题。 首先,我将表数据推送到汽车列表中,并将连接全部放在一个方法中。我正在通过以下方式获取数据。

    <table border="2">
    <tr class="tblHeader">
        <td>Car ID</td>
        <td>Year</td>
        <td>Make</td>
        <td>Model</td>
        <td>Color</td>
        <td>Availability</td>

    </tr>
    <%
        Table table = new Table();
        table.getTableConnection();
        List<Car> cars = table.getTableConnection();
        String renting;
        for (Car c : cars) {
            int id = c.getId();
            String year = c.getYear();
            String make = c.getMake();
            String model = c.getModel();
            String color = c.getColor();
            String avail = c.getAvailable();

    %>
        <tr>
        <td><%=id%></td>
        <td><%=year%></td>
        <td><%=make%></td>
        <td><%=model%></td>
        <td><%=color%></td>
        <td><%=avail%></td>
        </tr>
        }

3 个答案:

答案 0 :(得分:1)

最好将行放入循环中。

<c:forEach items="${cars}" var="car">
    <tr>      
        <td>${car.id}</td>
        <td>${car.year}</td>
        <td>${car.make}</td>
        <td>${car.model}</td>
        <td>${car.color}</td>
        <td>${car.available}</td>  
    </tr>
</c:forEach>

答案 1 :(得分:0)

首先你需要纠正html语法。您需要使用表头标记<th></th>来指定列标题。

<tr class="tblHeader">
        <th>Car ID</th>
        <th>Year</th>
        <th>Make</th>
        <th>Model</th>
        <th>Color</th>
        <th>Availability</th>
</tr>

关于数据呈现部分,我找不到您的代码的任何问题。

答案 2 :(得分:0)

使用foreach循环并移动一些小的更改后,表在for循环结束之前被关闭。表格数据在表格末端被截断。我的错,因为没有看到这个愚蠢的错误。