[JAVAEE] Thymeleaf 基本语法: 迭代循环
生活随笔
收集整理的這篇文章主要介紹了
[JAVAEE] Thymeleaf 基本语法: 迭代循环
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
th:each 遍歷集合
基本語法:
<div th:each="變量名 : 集合"> <p th:text="${變量名}"></p>
</div>
示例:遍歷對象集合
- 后臺代碼
@Controller
public class TestController {@RequestMapping("/th")public String index(Model model) {List<Student> stuList = new ArrayList<Student>();stuList.add(new Student(2019001, "小明"));stuList.add(new Student(2019002, "小麗"));stuList.add(new Student(2019003, "小王"));model.addAttribute("stuList", stuList);return "th/index";}
}
- 前端代碼
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title>
</head>
<body>
<table><tr><th>學號</th><th>姓名</th></tr><tr th:each="stu:${stuList}"><td th:text="${stu.id}">000</td><td th:text="${stu.name}">nobody</td></tr>
</table></body>
</html>
Student.java
package com.example.demo.bean;public class Student {private Integer id; //學號private String name; //姓名public Student() {}public Student(Integer id, String name) {this.id = id;this.name = name;}public Integer getId() {return id;}public void setId(Integer id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}
}
- 運行結果:
迭代狀態變量的使用
在集合的迭代過程還可以獲取狀態變量,只需在變量后面指定狀態變量 名即可,通過狀態變量的屬性可獲取集合的下標/序號、總數、是否為單 數/偶數行、是否為第一個/最后一個等信息。
<div th:each = "變量名,狀態變量名 : 集合" > <p th:text = "${狀態變量.屬性}" ></p>
</div>
注:如果缺省狀態變量名,則迭代器會 默認以變量名開頭的狀態變量 xxxStat
狀態變量的屬性
index:當前迭代對象的序號,從0開始,這是索引屬性
count:當前迭代對象的序號,從1開始,這個是統計屬性
size:迭代變量元素的總量,這是被迭代對象的大小屬性
even/odd:布爾值,當前循環是否是偶數/奇數(從0開始計算)
first:布爾值,當前循環是否是第一個
last:布爾值,當前循環是否是最后一個
current:當前迭代變量
- 示例:帶狀態變量的遍歷(加了一點樣式)
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title>
</head>
<body>
<table><tr><th>序號(從0開始)</th><th>序號(從1開始)</th><th>學號</th><th>姓名</th></tr><tr th:each=" stu, stat : ${stuList}" th:class="${ stat.odd } ? 'odd' : 'even' "><td th:text=" ${ stat.index } ">0</td><td th:text=" ${ stat.count } +'/' + ${ stat.size }">1</td><td th:text="${stu.id}">000</td><td th:text="${stu.name}">nobody</td></tr>
</table>
<style> table {border-collapse: collapse;width: 500px;
}th, td {border: 1px solid blue;text-align: center;
}.odd {background-color: lightcyan; /*奇數樣式*/
}.even {background-color: lightyellow; /*偶數樣式*/
} </style></body>
</html>
- 運行結果:
總結
以上是生活随笔為你收集整理的[JAVAEE] Thymeleaf 基本语法: 迭代循环的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 苹果手机怎么把通讯录转移到新手机??
- 下一篇: 前端面经笔记 2021.8.28