为什么我的thymeleaf只显示列表的最后一行

kuarbcqp  于 2021-07-26  发布在  Java
关注(0)|答案(1)|浏览(577)

我想展示前五名的课程名称和预定时间。
我已经从我的数据库中选择了前5个课程,并载入了一个列表。
这是我的密码:

while (rs.next()) 
                {
                CourseBooking cb = new CourseBooking ();     
                List topCourses = new ArrayList();
                cb.setCoursName(rs.getString(1));
                cb.setBookedTimes(rs.getString(2));
                topCourses.add(cb);
                model.addAttribute("topCourses ", topCourses );
                }

但当我使用“th:each”时,它只显示前5名的最后一行,不能显示
通读整个清单。

<tr th:each="m : ${topCourses }">      
                <td th:text="${m.coursName}"></td>  
                <td th:text="${m.bookedTimes}"></td>
            </tr>
6xfqseft

6xfqseft1#

(根据注解--您需要将列表的创建移到for循环之外)您的代码应该如下所示:

List topCourses = new ArrayList<CourseBooking>();

while (rs.next()) {
  CourseBooking cb = new CourseBooking ();     
  cb.setCoursName(rs.getString(1));
  cb.setBookedTimes(rs.getString(2));
  topCourses.add(cb);
}

model.addAttribute("topCourses ", topCourses );

相关问题