控制层:
@Controller public class ThirdThymeleafController { @GetMapping("/third") public String third(Model model) { String msg = "hello,thymeleaf"; User user1 = new User(1, "张三", 23); User user2 = new User(2, "李四", 25); User user3 = new User(3, "王五", 27); List<User> list = new ArrayList<>(); list.add(user1); list.add(user2); list.add(user3); model.addAttribute("msg", msg); model.addAttribute("userList", list); return "index3"; } }
注:会将数据返回给 /src/main/resources/templates/index3.html 页面中,该路径为默认路径。
页面:
<tr> <td>编号</td> <td>姓名</td> <td>年龄</td> <td>index</td> <td>count</td> <td>size</td> <td>current</td> <td>first</td> <td>last</td> </tr> <tr th:each="user,iterStat:${userList}"> <td th:text="${user.id}"></td> <td th:text="${user.username}"></td> <td th:text="${user.age}"></td> <td th:text="${iterStat.index}">index</td> <td th:text="${iterStat.count}">count</td> <td th:text="${iterStat.size}">size</td> <td th:text="${iterStat.current}">current</td> <td th:text="${iterStat.first}">first</td> <td th:text="${iterStat.last}">last</td> </tr>
效果:
注:
iterStat 称作状态变量,属性有:
index:当前迭代对象的 index(从 0 开始计算)
count:当前迭代对象的 index(从 1 开始计算)
size:被迭代对象的大小
current:当前迭代变量
even/odd:布尔值,当前循环是否是偶数/奇数(从 0 开始计算)
first:布尔值,当前循环是否是第一个
last:布尔值,当前循环是否是最后一个