遍歷map:
@GetMapping("/en") public String en(ModelMap map) { HashMap<String, Integer> hashMap = new HashMap<>(); hashMap.put("aa", 2); hashMap.put("a", 1); hashMap.put("aaa", 3); hashMap.put("aaaa", 4); map.addAttribute("words",hashMap); <table border="1" cellspacing="0"> <tr> <th>單詞</th> <th>頻率</th> </tr> <tr th:each="item:${words}"> <td th:text="${item.key}"></td> <td th:text="${item.value}"></td> </tr> </table>
遍歷list:
@RequestMapping("/list") public String list(ModelMap map) { List<User> list=new ArrayList<User>(); User user1=new User("⼤大⽜牛",12,"123456"); User user2=new User("⼩小⽜牛",6,"123563"); list.add(user1); list.add(user2); map.addAttribute("users", list); return "list"; } <table> <tr th:each="user,iterStat : ${users}"> <td th:text="${user.name}">neo</td> <td th:text="${user.age}">6</td> <td th:text="${user.pass}">213</td> <td th:text="${iterStat.index}">index</td> </tr> </table>
iterStat 稱作狀態變量量,屬性有:
index,當前迭代對象的 index(從 0 開始計算); count,當前迭代對象的 index(從 1 開始計算); size,被迭代對象的⼤大⼩小; current,當前迭代變量量; even/odd,布爾值,當前循環是否是偶數/奇數(從 0 開始計算); first,布爾值,當前循環是否是第⼀一個; last,布爾值,當前循環是否是最后⼀一個。
特別注意的是在使用each屬性時候
<tr th:each="user: ${users}">
如果沒有指定狀態變量,那么狀態變量是隱式的,可以直接使用
狀態變量的名稱是遍歷變量+Stat,上面默認名稱即:userStat